Information processing system, information processing method, computer program executed in information processing system

ABSTRACT

An information processing system includes a stream getting section for getting a data stream representing a content and a recording processing section for generating output control information and writing the data stream and the output control information on a medium. The output control information defines an appropriate output method, which is compatible with the output format of the content, following a rule that defines what type of processing should be done according to the type of input source of the content and the output format of the content and in accordance with source related information on the input source of the content. By reference to the output control information, a device that is going to play back the content from this medium can output the content without considering its input source.

TECHNICAL FIELD

The present invention relates to the processing of storing a content, towhich the access is controlled for the purpose of copyright protection,on a storage medium and the processing of reading such a content fromthe storage medium.

BACKGROUND ART

Recently, as more and more audiovisual appliances have adopted digitalinformation technology, it is now possible to transmit and copy acontent without debasing its quality. However, if contents that arestill under copyright protection were transmitted and copiedunlimitedly, then the copyright holders' rights might be infringed. Thatis why audiovisual appliances for recording and/or playing thosecontents are now required to have a copyright protection function.

Various types of digital audio appliances for CDs, DATs and MDs havebeen put on the market one after another since 1980s. As a result, acopy control function was developed for the purpose of copyrightprotection. For example, Serial Copy Management System (SCMS) is a copycontrol technique that has been used extensively in digital audioequipment since 1980s. According to the SCMS technique, copy controlinformation, as well as a content, is stored on a medium such as a CD,an MD or a broadcast wave, and when the content is copied either withinthe same housing or between multiple different appliances that areconnected together through a digital interface, the recorder determines,by the copy control information of that content, whether the content maybe copied or not. The SCMS has achieved a reasonable success in MD andother consumer audio recorders.

However, the copy control information of the SCMS is digital data thatis stored independently of the content and can be easily nullified byusing a personal computer (PC), for example. Besides, an analogtransmission cannot transfer the copy control information or be theobject of copy control.

In view of these problems of the SCMS, information recorders and playersfor providing copyright protection by using encryption technology havebeen developed. Also, to transfer data securely between those devices orbetween digital broadcast receivers, Digital Transmission ContentProtection (DTCP) has been used as a secure transmission system thatadopts device authentication and encryption techniques.

Hereinafter, the device disclosed in Japanese Patent ApplicationLaid-Open Publication No. 2003-59176 will be described as an exemplaryconventional recorder/player.

1. Configuration of Recorder/Player

FIG. 1 shows an arrangement of functional blocks in a conventionalrecorder/player 1100. The recorder/player 1100 includes a USB-compatibleinput/output interface (I/F) 1121, an IEEE 1394-compatible input/outputinterface (I/F) 1122, an MPEG (Moving Picture Experts Group) codec 1130,an analog data processible input/output interface (I/F) 1140 with anA/D, D/A converter 1141, an encryption processing section 1150, a ROM(read-only memory) 1160, a CPU (central processing unit) 1170, a memory1180, a drive 1190 for a storage medium 1195, a transport stream (TS)processing section 1300, a digital watermark (WM) processing section1185, a terrestrial tuner/converter 1501 for receiving a terrestrial RFsignal, and a satellite tuner/converter 1502 for receiving a satelliteRF signal. These components are connected together via a bus 1110.

The input/output I/Fs 1121 and 1122 receive digital signals,representing various contents such as video, audio and programs thathave been provided externally through USB and IEEE 1394 buses,respectively, and output those signals onto the bus 1110. Also, theseinput/output I/Fs 1121 and 1122 receive digital signals on the bus 1110and output them to external devices. The MPEG codec 1130 performs MPEGdecoding on the MPEG encoded data that has been supplied through the bus1110 and outputs it to the input/output I/F 1140. Also, the MPEG codec1130 performs MPEG encoding on the digital signal that has been suppliedfrom the input/output I/F 1140 and then outputs it onto the bus 1110.The input/output I/F 1140 has the A/D, D/A converter 1141 built in. Theinput/output I/F 1140 receives an analog signal as an externallyprovided content, gets it A/D (analog-to-digital) converted by the A/D,D/A converter 1141, and then outputs it as a digital signal to the MPEGcodec 1130. Also, the input/output I/F 1140 gets a digital signal,supplied from the MPEG codec 1130, D/A (digital-to-analog) converted bythe A/D, D/A converter 1141 and then outputs it as an analog signal toan external device.

The encryption processing section 1150 may be implemented as a singlechip LSI (large scale integrated circuit), encrypts or decodes a digitalsignal that has been supplied as a content through the bus 1110, andthen outputs the signal onto the bus 1110. It should be noted that theencryption processing section 1150 does not have to be a single-chip LSIbut may also be implemented by multiple different software programs orhardware components.

The ROM 1160 stores thereon a leaf key, which is a device key given as aunique identifier to a recorder/player or to a group ofrecorders/players, and a node key, which is a device key shared by aplurality of recorders/players or multiple groups. The ROM 1160 alsostores information about the digital watermark generation of therecorder/player.

The CPU 1170 performs the program stored in the memory 1180, therebycontrolling the MPEG codec 1130 and the encryption processing section1150. Also, the CPU 1170 carries out the processing of generatingcopyright information along with the encryption processing section 1150,for example. The memory 1180 may be a nonvolatile memory, for example,to store the program carried out by the CPU 1170 and the data requiredto operate the CPU 1170. Furthermore, the memory 1180 stores outputcontrol rule data for respective input sources as will be describedlater.

The drive 1190 drives the storage medium 1195, from/on which digitaldata can be read and written, thereby reading the digital data from thestorage medium 1195 and outputting it onto the bus 1110 and writingdigital data, supplied through the bus 1110, onto the storage medium1195. Alternatively, the program may be stored on the ROM 1160 and thedevice key may be stored on the memory 1180.

The storage medium 1195 is a medium that can store digital data thereonand may be an optical disk such as a DVD or a CD, a magneto-opticaldisk, a magnetic disk such as an HD, a magnetic tape, or a semiconductormemory such as a RAM. The storage medium 1195 may be built in therecorder/player 1100. In this example, however, the storage medium 1195is supposed to be insertable into, and removable from, the drive 1190.

The transport stream processing section (which will be referred toherein as a “TS processing section”) 1300 retrieves a transport packetrepresenting a particular program (or content) from a transport stream(which will be referred to herein as a “TS”) in which a number of TVprograms (contents) have been multiplexed together. The TS processingsection 1300 performs data processing to store the timing of appearanceof the TS retrieved, along with respective packets, on the storagemedium 1195 and also performs appearance timing control processing whilereading it from the storage medium 1195.

To each packet of the TS, an arrival time stamp (ATS) is added as apiece of information specifying its timing of appearance. The timing ofappearance is determined during encoding so as not to break down atransport stream system target decoder (T-STD), which is a virtualdecoder defined by the MPEG-2 Systems. While the TS is being playedback, the timing of appearance is controlled by reference to the ATSadded to each transport packet. These controls are performed by the TSprocessing section 1300.

For example, in recording a transport packet on the storage medium 1195such as a DVD, the TS processing section 1300 adds an arrival time stamp(ATS), representing the input timing of each transport packet, to thetransport packet and records it as a source packet with a narrowedinterval. By additionally storing the timing of appearance of eachtransport packet on the storage medium, the output timing of each packetcan be controlled during the playback.

The encryption processing section 1150 performs encryption processing onthe contents that are included in the TS to which the ATS has beenadded. The contents that have been subjected to the encryptionprocessing are stored on the storage medium 1195. Also, the encryptionprocessing section 1150 performs the process of decoding the encryptedcontents that are stored on the storage medium 1195.

The digital watermark (WM) processing section 1185 embeds copy controlinformation as a digital watermark in a content to be stored on thestorage medium or detects the embedded digital watermark from a contentto be read from the storage medium. Optionally, the processing section1185 may rewrite the copy control information and then embed it as adigital watermark.

On the storage medium 1195, stored are various types of identificationdata, encryption key, and other types of secret information, including astamper ID that is given to each stamper when a disk is manufactured, adisk ID given as a unique ID to each individual disk, a content ID givenas a unique ID to each single content, and a key for use in encryptionprocessing.

If encrypted, those various types of secret information stored on thestorage medium 1195 are decoded by the encryption processing section1150. And an encryption key for use in recording or playing back acontent on/from the storage medium is generated based on the informationdecoded. The secret information is used only when the encryptionprocessing section 1150 generates a content encryption key so that thesecret information does not leak to an outsider.

In FIG. 1, the encryption processing section 1150, TS processing section1300 and digital watermark processing section 1185 are shown as threedifferent blocks to make them easily understandable. However, thesesections may be implemented as one or a plurality of LSIs that performsthese functions. Also, any of these functions may be realized by acombination of multiple software programs or hardware components.

Another conventional recorder/player may have the configuration shown inFIG. 2 instead of that shown in FIG. 1. FIG. 2 shows an arrangement offunctional blocks in another conventional recorder/player 1200. Unlikethe recorder/player 1100, the recorder/player 1200 has a storage medium1195 that is insertable into, and removable from, a storage mediuminterface (I/F) 1210 as a drive. The storage medium 1195 may also beloaded into another type of recorder/player so as to read and/or writedata by using that recorder/player. The other components of therecorder/player 1200 are the same as, and are identified by the samereference numerals as, the counterparts of the recorder/player 1100 andthe description thereof will be omitted herein.

2. Recording/Playback Processing

Hereinafter, it will be described with reference to the flowcharts shownin FIGS. 3(A) to 3(C) and FIGS. 4(A) and 4(B) how the recorder/playerperforms data recording and playback processes. The following processingmay be carried out by either the recorder/player 1100 shown in FIG. 1 orthe recorder/player 1200 shown in FIG. 2. In the following description,however, the processing is supposed to be performed by therecorder/player 1100.

In recording a content, represented by an external digital signal, onthe storage medium 1195, recording processing is carried out followingthe flowcharts shown in FIGS. 3(A) and 3(B). FIG. 3(A) shows how toprocess a digital signal that is protected by copy control information(CCI). FIG. 3(B) shows how to process a digital signal that is notprotected by the copy control information (CCI). These processes wereproposed in 5C-DTCP (Digital Transmission Content Protection) system,which had been submitted as a joint proposal by five corporations.

The procedure shown in FIG. 3(A) will be described. When a contentrepresented by a digital signal (which will be referred to herein as a“digital content”) is supplied to the input/output I/F 1122 by way of anIEEE (Institute of Electrical and Electronics Engineers) 1394 serialbus, for example, the input/output I/F 1122 receives the incomingdigital content in Step S301 and outputs it to the TS processing section1300 through the bus 1110.

In Step S302, the TS processing section 1300 generates block data byadding an arrival time stamp (ATS) to each of the transport packets ofthe TS and then outputs it to the encryption processing section 1150 byway of the bus 1110.

Next, in Step S303, the encryption processing section 1150 performsencryption processing on the digital content received, and then outputsthe resultant encrypted content to either the drive 1190 or the storagemedium I/F 1210 by way of the bus 1110. The encrypted content getsrecorded on the storage medium 1195 by either the drive 1190 or thestorage medium I/F 1120 (in Step S304) to end the recording processing.

Five Company Digital Transmission Content Protection (5C-DTCP) wasestablished as a standard for protecting a digital content beingtransmitted between multiple devices that are connected together via anIEEE 1394 serial bus. According to this standard, if a digital contentis not copy free, then a sender and recipient authenticate each other tosee if they can handle copy control information (CCI) properly tocontrol copying. After that, the sender encrypts the digital content andtransmits it. In response, the recipient decodes the encrypted digitalcontent (which will be sometimes referred to herein as an “encryptedcontent”), performs processing in accordance with the copy controlinformation (CCI) and carries out the processing of updating the copycontrol information (CCI).

As the copy control information (CCI) defined by the DTCP, informationof two bits is added to a transport packet to indicate that the datawith this additional information is “copy free” (i.e., can be copied anunlimited number of times), “copy one generation” (i.e., can be copiedin only one generation) or “copy never” (i.e., may not be copied atall). According to the CGMS system, two-bit information “00” represents“copy free”, “10” represents “copy one generation” and “11” represents“copy never”.

If the recorder/player 1100 complies with the DTCP, then therecorder/player 1100 determines, by the CCI of the input information,whether the given content can be stored (copied) or not, and performs atype of processing according to the result of the decision. For example,if the CCI added to the input content is “11” (copy never), then therecorder/player 1100 never performs the processing of storing thecontent on the storage medium. On the other hand, if the CCI added tothe input content is “10” (copy one generation), then therecorder/player 1100 rewrites the CCI into “11” (copy never) just beforestoring the content, and performs the processing of storing the content.

In transmitting and receiving data so as to comply with the DTCP, theinput/output I/F 1122 on the data receiving end receives the encryptedcontent in Step S301 by way of the IEEE 1394 serial bus, decodes theencrypted content in accordance with the TCP, and then outputs it as aplain text to the encryption processing section 1150.

The encryption of the digital content compliant with the DTCP is done bygenerating a key that changes with time and using that key. Theencrypted digital content, as well as the key that was used to encryptit, is transmitted through the IEEE 1394 serial bus, and then decoded onthe receiving end by using the key included there. More exactly,according to the DTCP, the initial value of the key and a flagrepresenting a time to change the keys for use to encrypt the digitalcontent are included in the encrypted content. And on the receiving end,the initial values of the key included in the encrypted content arechanged at the time represented by the flag that is also included in theencrypted content, thereby generating the key that was used forencryption and decoding the encrypted content. In this case, anencrypted content may be regarded as including a key to decode thecontent. Thus, this way of thinking will be adopted in the followingdescription, too. As for the DTCP, its general information is disclosedat the website identified by the URL (uniform resource locator)http://www.dtcp.com.

Next, the procedure shown in FIG. 3(B) will be described. FIG. 3(B)shows how to process a digital signal that is not protected by the copycontrol information (CCI) proposed by the 5C-DTCP system. When a contentrepresented by a digital signal (which will be referred to herein as a“digital content”) is supplied either to the input/output I/F 1121 byway of the USB bus or to the input/output I/F 1122 by way of the IEEE1394 bus, for example, the input/output I/F 1121 or 1122 receives theincoming digital content in Step S311 and then outputs it to the digitalwatermark processing section 1185 through the bus 1110.

The digital watermark processing section 1185 detects the copy controlinformation, which is embedded as digital watermark (WM) in the incomingcontent, and carries out a type of processing in accordance with thecopy control information. The digital watermark may be embedded in acontent in the following manner. Specifically, first, when a content isproduced, a primary mark is generated as the copy information of theoriginal content. The primary mark may be 2-bit information such as “11”(copy never), “10” (copy one generation) and “00” (copy free). Whenmaking a copy, the recorder/player 1100 adds a one-bit value “1”, whichis called a “copy mark”, to the primary mark “10”, generates a value“110” and embeds that value as a digital watermark in the content,thereby showing that this content is a copy. If the primary mark is “00”(copy free), there is no need to add any copy mark. And if the primarymark is “11” (copy never), then the recorder makes no copies at allsince copying is prohibited. In this manner, a copy of a given contentis made in accordance with the copy control information embedded asdigital watermarks.

However, some devices can process digital watermarks but others cannot.Those may be classified into devices of the following three generations:

-   -   1^(st) generation: devices that can neither detect nor embed        digital watermarks;    -   2^(nd) generation: devices that can only detect digital        watermarks (and can also detect primary marks but cannot add        copy marks); and    -   3^(rd) generation: devices that can both detect and embed        digital watermarks (and can also detect primary marks and add        copy marks).

The devices of these three generations perform mutually differentprocesses.

Referring back to FIG. 3(B), the digital watermarks are processed inStep S312, and then output to the TS processing section 1300 in StepS313.

The processes done by the TS processing section 1300 include theprocessing of setting copy control information (CCI) for TS stream datato be stored on a storage medium. In FIG. 3(B), however, the input datais a digital signal, which has not been controlled in accordance withthe CCI, and therefore, the CCI added to the input data may beunreliable. In that case, in accordance with the copy controlinformation derived from the digital watermark that has been detected inthe digital watermarking processing step S312, CCI is newly set on thestream data that is going to be stored on the storage medium.

That is to say, if non-CCI-protected data has been input, it isdetermined, by the digital watermark of the input information, whetherthe content may be stored (i.e., copied) or not, and an appropriate typeof processing is carried out based on the result of the decision. Forexample, if the digital watermark embedded in the incoming content is“11” (copy never), no process of storing the content on the storagemedium is carried out. On the other hand, if the digital watermark thathas been set for the incoming content is “10” (copy one generation),then the TS processing section 1300 carries out the process of storingthe content with the CCI defined to be “11” (copy never) after thestorage of the content.

In this manner, in processing non-CCI-protected data, the CCI in the TSis defined by the digital watermark (WM).

The processing steps S314 and S315 that follow are the same as theprocessing steps S303 and S304 shown in FIG. 3(A). In a device in whichthe digital watermark can be embedded, a content, in which updated copycontrol information is embedded as the digital watermark, is stored onthe storage medium.

Next, the process of recording a content, represented by an externalanalog signal, on the storage medium 1195 will be described withreference to FIG. 3(C), which shows the procedure of the analog signalwriting process. When a content represented by an analog signal (i.e.,an analog content) is supplied to the input/output I/F 1140, theinput/output I/F 1140 receives that analog content in Step S321 and thenthe process advances to Step S322. In Step S322, the analog content isA/D converted by the built-in A/D, D/A converter 1141 into a contentrepresented by a digital signal (i.e., a digital content).

This digital content is supplied to the MPEG codec 1130, subjected toMPEG encoding (i.e., encoding process by MPEG compression) and thensupplied to the encryption processing section 1150 through the bus 1110in Step S323.

The processing steps S324, S325 and S326 are respectively the same asthe processing steps S312, S313 and S314 shown in FIG. 3(B). That is tosay, a digital watermark is detected and updated by the digitalwatermark processing section 1185, an ATS is added by the TS processingsection 1300 to the transport packet, the CCI (copy control information)is added in accordance with the digital watermark detected, and anencryption process is carried out by the encryption processing section1150. The encrypted content, obtained as a result of these processingsteps, is recorded on the storage medium 1195. Then, the recordingprocess ends.

The recorder/player 1100 performs an appropriate type of processingaccording to the input source of a given content, thereby recording thecontent on a storage medium. If the method of transmitting the copycontrol information (CCI) of the given content is already defined and ifthat information is protected (e.g., when the content is input throughan IEEE 1394 bus under the 5C-DTCP or as a satellite or terrestrialdigital telecast), then the CCI of the content to be recorded isdetected in accordance with the definition. On the other hand, if thegiven content has been input through an IEEE 1394 bus without protectingthe content or CCI under the 5C-DTCP or if the given content is ananalog input, then the digital watermark of the input content beingrecorded needs to be detected continuously to define the CCI of thatcontent. As a result, when the CCI is fixed, the process of stopping therecording may need to be performed. That is to say, if the copy controlinformation derived from the digital watermark detection informationindicates “copy never”, then the content recording needs to be stopped.

The recorder/player 1100 also records copyright information on thestorage medium in association with the content. Examples of thiscopyright information includes input source information, the digitalwatermark generation information (i.e., the first, second and thirdgenerations described above) of the recorder, information aboutrespective recording modes, the strictest copy control information(i.e., title-by-title copy control information) among various pieces ofcontent CCI, a corresponding packet number as a piece of informationabout the copy control information change point in the recorded content,and copy control information at the change point. Among these variouspieces of information, at least one piece of information is defined asthe copyright information and stored on the storage medium.

Hereinafter, the title-by-title copy control information will bedescribed. Generally speaking, various types of copy control informationare defined as a mixture for a given content. For example, a singlecontent may include “copy never” portions, “copy free” portions and“copy one generation” portions. And the strictest copy controlinformation, which has been selected from these various types of copycontrol information detected as one with the strictest conditions, isdefined as the title-by-title copy control information and may be storedon the storage medium in association with the content. The strictness ofthe copy control imposed by the copy control information decreases inthe order of “copy never”, “copy one generation” and “copy free”.

The recorder/player 1100 also stores a title key on the storage mediumin association with the content to be recorded on the storage medium,and carries out an encryption process using the title key. As usedherein, the “title key” is one of the keys needed to perform anencryption process and is generated for each title, which is defined foreach single content. If a content to be recorded on the storage mediumand associated with a single title key includes two types of copycontrol information “copy one generation” and “copy free”, then “copyone generation” is defined as the title-by-title copy controlinformation. If copy never is included in the content to be recorded,then “copy never” is defined as the title-by-title copy controlinformation. Only when the content to be recorded is copy free, “copyfree” is defined as the title-by-title copy control information.

Next, the process of playing back a content from the storage medium 1195and outputting it either as an analog content or as it is (i.e., as adigital content) will be described with reference to FIGS. 4(A) and4(B), which show the procedures of the content playback and outputprocesses. The playback process is modified according to the inputsource information included within the copyright information, which isstored on the storage medium in association with the content to beplayed back, or whether the title-by-title copy control information isstored or not. The input source information shows which input source thecontent has come from.

If the title-by-title copy control information is stored, then therecorder/player 1100 determines, by the title-by-title copy controlinformation, how to process the content (i.e., what type of copy controlshould be imposed on the content) and also determines whether thecontent may be played back or not. On the other hand, if notitle-by-title copy control information is stored, then therecorder/player 1100 performs a playback process while detecting thedigital watermark and determines based on the result whether the contentmay be played back or not. If the answer is YES, the content is outputfollowing the rule defined for each individual input source. Generallyspeaking, unless a given content is copy free, the content needs to beprotected during its output. A digital content may be output while CCIis being defined for a TS under the 5C-DTDP, for example. On the otherhand, an analog content may be output while a Macrovision signal isbeing added to the content, for example. As for a video signal, by usingthe additional information of a CGMS method (which will be referred toherein as “CGMS information”) and the difference of the AGC method, anAGC pulse signal (i.e., a pseudo sync signal used for deterring copiesin the Macrovision method), which disables normal use of a copied videosignal, is added to the video signal and then the video signal with theAGC pulse signal is output.

FIG. 4(A) shows the procedure of processing of reading data, which hasbeen input from a CCI-protected input source and then stored on astorage medium, from the storage medium and outputting that data.

First, in Step S401, the drive 1190 or the storage medium I/F 1210 readsthe encrypted content and copyright information, associated with theencrypted content, from the storage medium 1195. As described above, thecopyright information includes at least one type of information selectedfrom the group consisting of the input source information, the digitalwatermark generation information of the recorder, information aboutrespective recording modes, title-by-title copy control information, acorresponding packet number as a piece of information about the copycontrol information change point in the recorded content, and copycontrol information at the change point. Based on these pieces ofinformation, the recorder/player 1100 determines whether or not thecontent may be played back and output. If the answer is YES, theencrypted content is output to the encryption processing section 1150through the bus 1110.

Next, in Step S402, the encryption processing section 1150 decodes theencrypted content that has been supplied from the drive 1190 or thestorage medium I/F 1210. The decoded data is output to the TS processingsection 1300 by way of the bus 1110.

Subsequently, in Step S403, the TS processing section 1300 determinesthe output timings by the ATS of respective transport packets that formthe TS, carries out a control according to the ATS, and then suppliesthem to the input/output I/F 1120 by way of the bus 1110. Also, the TSprocessing section 1300 detects the copy control information (CCI) fromthe TS and performs a control operation in accordance with the CCI.

Thereafter, in Step S404, the TS processing section 1300 determineswhether the output has an analog format or a digital format. If it is adigital output, then the TS processing section 1300 outputs the digitalcontent to an external device by way of the digital input/output I/Fs1121 and 1122 to end the playback process.

If the input/output I/F 1122 outputs a digital content through an IEEE1394 serial bus in Step S405, then the sender device and receiver deviceauthenticate each other so as to comply with the DTCP standard asdescribed above and then the digital content is encrypted andtransmitted.

On the other hand, if an analog content is output, then the digitalcontent decoded by the encryption processing section 1150 is supplied tothe MPEG codec 1130 by way of the bus 1110.

In Step S406, the MPEG codec 1130 subjects the digital content to MPEGdecoding (i.e., expansion process) and then supplies it to theinput/output I/F 1140. In Step S407, the input/output I/F 1140 gets thedigital content, which has been MPEG decoded by the MPEG codec 1130, D/Aconverted (S425) by the built-in A/D, D/A converter 1140 into an analogcontent. Thereafter, the process advances to Step S408, in which theinput/output I/F 1140 outputs the analog content to an external deviceto end the playback process.

On the other hand, FIG. 4(B) shows the procedure of processing ofreading data, which has been input from a non-CCI-protected input sourceand then stored on a storage medium, from the storage medium and thenoutputting the data. In this processing, the playback control is carriedout based on the copy control information acquired by detecting thedigital watermark of the content, not the CCI added to the block data inthe TS.

The difference between the processing procedures shown in FIGS. 4(B) and4(A) lies in that the digital watermark (WM) processing step S414 iscarried out in FIG. 4(B) after the TS has been processed in Step S413.As used herein, the digital watermark (WM) processing is a process inwhich the digital watermark is detected from the data of the content tobe played back, copy control information is read from the digitalwatermark, and then a playback control is carried out based on thedigital watermark read. For example, if a digital watermark indicating“copy never” has been detected, control is carried out such that noplayback with an external output is performed.

As described above, the recorder/player 1100 stores copyrightinformation on a storage medium while recording a content on the storagemedium, and gets the copyright information about a content to be playedback and carries out a control operation in accordance with varioustypes of information in the copyright information while playing back thecontent.

3. Copyright Information

Next, input source information to be stored as the copyright informationwill be described. As used herein, the “input source information” showsthe input source of a content to be recorded. For example, the inputsource information indicates that the content to be recorded has comefrom an input source compliant with the 5C-DTCP mentioned above or is asatellite broadcast content transmitted through a BS or a CS, aterrestrial digital content or a terrestrial analog content.

The input source information further includes information showingwhether or not it is a content with copy control information that hasbeen input through an IEEE 1394 interface and information showingwhether it is digital input data or analog input data. These pieces ofinformation are identifiable by an input interface through which thedata has been input. The input source information preferably furtherincludes information that clearly shows what type of copy controlinformation has been provided for a given content, e.g., whether or notthe input content has copy control information compliant with the5C-DTCP (more specifically, copy control information added to TS packetsas digital data or copy control information added as a digitalwatermark). As for digital data that has been input so as to becompliant with the 5C-DTCP and a content that has been broadcast via BSor CS, a configuration for broadcasting the type of the copy controlinformation as additional information for a content has already beenrealized or is being researched. Thus, the recorder/player can get thedetails of the copy control information from such additionalinformation.

It will be described why the input source information is stored ascopyright information. Specifically, since the rule to handle a givencontent may be different from one input source to another, informationabout what type of input source the content has come from needs to beacquired during a playback process and used as information thatdetermines the output mode and controls the playback during the playbackprocess. For example, according to a content protection standard such asthe 5C-DTCP, a device that has received a content protected under thestandard should store and output the content in the mode defined by thestandard.

FIG. 5 shows exemplary output control rules on input sources.Hereinafter, it will be described as an example how the playback andoutput of stored data is controlled if the data has come from an inputsource compliant with the 5C-DTCP. In FIG. 5, the applied rules aredefined on the row on which the input source is “5C”. First, as for ananalog output, its output is allowed if the number of horizontal scanlines is 540 or less and if a Macrovision signal is added to deteranalog copying. As for a digital output, on the other hand, its outputis allowed only if the content is protected by a content protectiontechnique authorized by the 5C (or if a higher degree of protection isguaranteed). The analog and digital output modes are controlled for datathat has been input and stored via BS or CS, terrestrial data, and datathat has come from various other types of input sources.

The output control rule changes according to the protection method.Thus, to guarantee protection on a content, the output of the contentneeds to be controlled by the strictest method. In that case, however,even high-resolution video must be output as low-resolution video.

To provide the best possible image and sound qualities for the user,information that allows him or her to identify the source of each givencontent (i.e., source information) may be defined and output rules tofollow in accordance with that information may be consulted.Specifically, the source information may be included in copyrightinformation to be stored on a storage medium. Then, there is no need toapply the strictest rules to every content and the content can be playedback and output following the rules of playback process and withoutdebasing the image and sound qualities unnecessarily.

To adopt such a method, however, the player must retain the outputcontrol rules on various input sources. In recording a content on aremovable medium, in particular, the content should be played back by adifferent device from its original recorder, and therefore, every playerneeds to retain all of those output control rules. Actually, however, itis difficult to have each and every player always retain the newestoutput control rules. Consequently, an appropriate output control cannotbe guaranteed on all input sources.

For example, the BS/broadband CS digital broadcasting has three types ofservices including digital TV service, digital audio service, and dataservice. All of these services are provided on the air as MPEG-2transport streams (which will be referred to herein as “TS”). If thereceiver of those broadcast waves outputs a content, of which thecopyright needs to be protected, through a digital interface such as anIEEE 1394 interface, then the content is encrypted and transmitted underthe DTCP (Digital Transmission Content Protection).

When a digital broadcast content is directly output from the broadcastreceiver to the IEEE 1394 interface, it is possible to find whichservice was the source of the content and carry out an output controlaccording to the specific source.

Nevertheless, even if a digital broadcast is stored as a TS on a storagemedium, the player, as well as the receiver, needs to perform an outputcontrol according to the specific source when the content is playedback. In Japan, for example, the Association of Radio Industries andBusinesses (ARIB), which was founded to use radio waves effectively inthe fields of telecommunications and broadcasting, prohibits theoperation of the audio service, which is one of the three servicesdescribed above, from transmitting data in the form of TS, which isprotected under the DTCP, for the purpose of using the radio waves aseffectively as possible. That is why the player must retain the rulethat prohibits the output of a TS.

Also, now that a single type of players are shipped to various countriesmore and more often as the MPEG standards have become increasinglypopular worldwide, it is a heavy burden on a manufacturer to set outputcontrol rules on a country-by-country basis and according to the inputsources that are adopted in the broadcasting of each country.

An object of the present invention is to provide a technique ofprotecting the copyright of a given content appropriately according tothe input source of the content.

DISCLOSURE OF INVENTION

An information processing system according to the present invention isable to record a content on a medium. The information processing systemincludes: a stream getting section for getting a data streamrepresenting the content; and a recording processing section forgenerating output control information and writing the data stream andthe output control information on the medium. The output controlinformation defines an appropriate output method, which is compatiblewith the output format of the content, following a rule that defineswhat type of processing should be done according to the type of inputsource of the content and the output format of the content and inaccordance with source related information on the input source of thecontent.

The stream getting section may get a data stream including the sourcerelated information.

The recording processing section may get the source related informationthat includes copyright control information of the content and/or sourceinformation that shows the type of the input source. The copyrightcontrol information may be used to control at least one of theprocessing of recording the content and the processing of outputting therecorded content.

The recording processing section may get the source related informationincluding the copyright control information, which includes recordingcontrol information for controlling recording of the content and/oroutput control information showing whether the content may be output ornot.

The recording processing section may get source information, which showsthe type of the input source by an acquisition route of the data stream,as the source related information.

The stream getting section may receive the data stream as a broadcast,and the recording processing section may find the acquisition route ofthe data stream by the channel of the broadcast received.

The recording processing section may find the acquisition route of thedata stream by information identifying a broadcasting system.

The stream getting section may get the data stream from a contentstorage medium, which is different from the medium and on which thecontent is stored, and the recording processing section may find theacquisition route of the data stream by the type of the content storagemedium.

The recording processing section may generate a stream file, in whichthe data stream is stored, and an information file, in which the outputcontrol information is stored, for the medium.

The recording processing section may describe the output controlinformation in the data stream and may generate a stream file, in whichthe data stream is stored, and an information file, in which the outputcontrol information is stored, for the medium.

The data stream received may include control information that defineshow to output the content, and the recording processing section mayfurther generate different pieces of output control information forrespective portions of the content in accordance with the controlinformation.

The recording processing section may describe those pieces of outputcontrol information for the respective portions of the content withinthe data stream and may generate a stream file, in which the data streamis stored, for the medium. When describing output control informationthat prohibits output, the recording processing section may generate aninformation file, in which the output control information that prohibitsoutput is stored, for the medium.

The data stream received may include control information that defineshow to output the content. If the control information includes a portionthat prohibits outputting the content, the recording processing sectionmay generate output control information that prohibits outputting theentire content.

The recording processing section may further generate checking databased on information unique to the medium and the output controlinformation, and may write the checking data on the medium.

The content may be an audio content, and the recording processingsection may retain a rule that defines what type of processing should bedone according to the output mode of the audio content.

An information processing method according to the present invention isdesigned to record a content on a medium. The method includes the stepsof: getting a data stream representing the content; generating outputcontrol information, the output control information defining anappropriate output method, which is compatible with the output format ofthe content, following a rule that defines what type of processingshould be done according to the type of input source of the content andthe output format of the content and in accordance with source relatedinformation on the input source of the content; and writing the datastream and the output control information on the medium.

A computer program according to the present invention is executed by aninformation processing system for recording a content on a medium. Thecomputer program is defined so as to make the information processingsystem, executing the computer program, perform the steps of: getting adata stream representing the content; generating output controlinformation, the output control information defining an appropriateoutput method, which is compatible with the output format of thecontent, following a rule that defines what type of processing should bedone according to the type of input source of the content and the outputformat of the content and in accordance with source related informationon the input source of the content; and writing the data stream and theoutput control information on the medium.

Another information processing system according to the present inventionis designed to play back a content that is stored on a medium. Outputcontrol information, defining an appropriate output method compatiblewith the output format of the content, has been written on the medium.The output control information has been generated following a rule thatdefines what type of processing should be done according to the type ofinput source of the content and the output format of the content and inaccordance with source related information on the input source of thecontent. The information processing system includes: a readingprocessing section for reading the output control information and a datastream representing the content from the medium; and an output controlsection for outputting the content in accordance with the output controlinformation.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows an arrangement of functional blocks in a conventionalrecorder/player 1100.

FIG. 2 shows an arrangement of functional blocks in another conventionalrecorder/player 1200.

FIG. 3(A) shows how to process a digital signal that is protected bycopy control information. FIG. 3(B) shows how to process a digitalsignal that is not protected by the copy control information. And FIG.3(C) shows how to store an analog signal.

FIGS. 4(A) and 4(B) show the procedures of content playback and outputprocesses.

FIG. 5 shows exemplary output control rules on input sources.

FIG. 6 shows an arrangement of functional blocks in an informationstorage system 10 according to a preferred embodiment of the presentinvention.

FIG. 7 shows an arrangement of functional blocks in an informationstorage device 100 according to this preferred embodiment.

FIG. 8(a) shows the arrangement of packets in the TS received by theMPEG-TS processing section 103 and FIG. 8(b) shows the arrangement ofpackets in the partial TS that has been output from the MPEG-TSprocessing section 103.

FIG. 9 shows an arrangement of functional blocks in the MPEG-TSprocessing section 103.

FIG. 10 lists the service information (SI) and program specificinformation (PSI) that are used in a TS.

FIG. 11 shows an exemplary data structure of a program map table PMT.

FIG. 12 shows the data structure of a digital copy control descriptor.

FIG. 13(a) shows correspondence between a two-bit value described in thecopy_control_type field and the operation of the information storagedevice 100 associated with that value.

FIG. 13(b) shows correspondence between a two-bit value described in thedigital_recording_control_data field and the operation of theinformation storage device 100 associated with that value.

FIG. 13(c) shows correspondence between a two-bit value described in theAPS_control_data field and the operation of the information storagedevice 100 associated with that value.

FIG. 14 shows exemplary operating rules on content protection.

FIG. 15 shows the data structure of a content availability descriptor.

FIG. 16 shows the contents of processing to be done according to the bitvalue in the encryption_mode field.

FIG. 17 shows the data structure of a service descriptor.

FIG. 18 shows correspondence between a possible value in theservice_type field and its associated service.

FIG. 19 shows exemplary rules on a copyright protection requirementaccording to a given service type and a parameter value associated withthe requirement when a content is recorded digitally.

FIG. 20 shows a hierarchy established by the file system of the medium110.

FIG. 21(a) shows the data structure of a copy status descriptor. FIG.21(b) shows the data structure of a private_data_byte field included inthe copy status descriptor. FIGS. 21(c) through 21(e) show thedefinitions of EPN and output 1 and 2 fields that are defined in theprivate_data_byte field.

FIG. 22(a) shows an exemplary data structure of the copyright controlinformation generated by copyright information generating section 105and FIG. 22(b) shows the values of copy control information (CCI) andthe definitions of its associated copy controls.

FIG. 23 shows how (a portion of) copyright control information may bedescribed when multiple pieces of copy control information are definedfor a single content.

FIG. 24 is a flowchart showing the procedure of the recording processingdone by the information storage device 100.

FIG. 25 shows an arrangement of functional blocks in an informationplayback system 20 according to this preferred embodiment.

FIG. 26 shows an arrangement of functional blocks in an informationplayer 200 according to this preferred embodiment.

FIG. 27 is a flowchart showing the procedure of the playback processingdone by the information player 200.

FIG. 28 shows another example of the rules shown in FIG. 19.

FIG. 29 shows an arrangement of functional blocks in an informationstorage device 120 according to this preferred embodiment.

FIG. 30 shows a configuration of a transmission system 300 according tothis preferred embodiment.

FIG. 31 shows an exemplary procedure of processing to be done when acontent cannot be received due to TTL constraints.

FIG. 32 shows an exemplary procedure of processing to be done when acontent can be received.

FIG. 33 shows an exemplary procedure of processing to be done when anRTT is used.

FIG. 34 shows a transmission system including a TTL setting section 42and a TTL adjusting section 47.

BEST MODE FOR CARRYING OUT THE INVENTION

Hereinafter, preferred embodiments of the present invention will bedescribed with reference to the accompanying drawings.

Embodiment 1

FIG. 6 shows an arrangement of functional blocks in an informationstorage system 10 according to a preferred embodiment of the presentinvention. The information storage system 10 can write digital data,representing a content, on a medium 15. More particularly, theinformation storage system 10 may be a DVR system, which is loaded witha RAM disk such as a DVD-RAM and reads and/or writes data from/on theRAM disk. Alternatively, the information storage system 10 may also beimplemented as an HDR system, which has a built-in hard disk and readsand/or writes data from/on the hard disk. The medium 15 can storedigital data thereon and may be an optical disk such as a DVD or a CD, amagnetic disk such as a magneto-optical disk or an HD, a magnetic tape,or a semiconductor memory (e.g., a RAM).

If some restrictions are imposed on writing content data on the medium15 (i.e., outputting it to the medium 15) for the purpose of copyrightprotection, for example, then the information storage system 10 performsprocessing to meet those restrictions. For example, if the informationstorage system 10 has received a data stream representing an audiocontent and if the data stream has been provided with additional copycontrol information showing “recordable only once”, then the informationstorage system 10 writes the data stream on the medium 15 with the copycontrol information changed into “no copying permitted anymore”. In thiscase, the copy control information may be written on a different filefrom a data stream file. Optionally, the data stream may be encryptedand then written on the medium 15. In another example, the informationstorage system 10 may have received a data stream representing a TVvideo content and no restrictions may be imposed on its recording. Inthat case, the information storage system 10 adds copy controlinformation showing “copying permitted without restrictions” to the datastream and then writes the data stream on the medium 15.

As to whether a given content is recordable or not and whether it can beplayed back and output or not, it is also determined by considering whatsource has provided that content. More specifically, it is also takeninto consideration whether the input source is an audio service thatprovides audio contents or a TV service that provides video contents.

In writing a data stream on the medium 15, the information storagesystem 10 derives copy control information (i.e., information showingwhether or not the content will be able to be copied or stored afterthat) and output control information (i.e., information showing whetheror not the content will be able to be played back and output after that)according to the input source, the contents of the copy controlinformation in the data stream of the content, and predetermined rules.Then, the information storage system 10 writes the copy controlinformation and output control information within the data stream and/orin a different file from the data stream. In the following description,the copy control information and output control information will bereferred to herein as “copyright control information” collectively.

In accordance with the copyright control information, the output devicecan determine whether or not the data stream can be output as digitaldata or whether or not the data stream can be further copied during theplayback process. For example, the output device can determine, by onlythe output control information of the copyright control information,whether or not the data stream can be output as digital data. As aresult, the information showing the input source is not needed anymoreand the playback/output device does not have to retain the type of theinput source and a rule for processing to be done in that situation. Theplayer has only to have the function of interpreting the output controlinformation. Also, the output device can determine, by the copy controlinformation of the copyright control information, whether the datastream can be further copied or not.

Hereinafter, the information storage system 10 will be described in moredetail. The information storage system 10 includes a signal receivingsection (including an antenna 11-1 to receive a broadcast signal (asradio waves) and a hard disk 11-2 and an optical disk drive 11-3 thatoutput a digital signal), a stream getting section 12, a contentextracting section 13, a recording processing section 14 and a medium15.

The signal receiving section receives a signal concerning a data stream.The stream getting section 12 gets the data stream from the signal thathas been received at the signal receiving section. The signal may be asignal from a broadcasting satellite (BS) or a terrestrial digitalsignal.

The content extracting section 13 extracts a content from the datastream and outputs it as content data. The data stream does notnecessarily include just a single content but may include two or morecontents. In the latter case, the content extracting section 13 extractsa content to be recorded.

The recording processing section 14 stores a table of rules definingwhat type of processing should be done according to the input source ofa given content and the output mode of that content. The “input source”means the type of service given by the content's provider, e.g., digitalTV service, digital audio service or data service.

The recording processing section 14 receives the content data, locatesits input source, and consults its table with the input source and thecopy control information of the content within the content data, therebygenerating output control information on an output format basis. Then,the recording processing section 14 writes the content data and theoutput control information generated on the medium 15 (such as anoptical disk). Writing may be performed (1) such that the content dataand the output control information are stored separately on the medium15 or (2) such that the output control information is included in thecontent data and that the content data and the output controlinformation are stored separately on the medium 15. If necessary, therecording processing section 14 may encrypt the content data and thenstore the encrypted content data on the medium 15.

Optionally, the recording processing section 14 may write not only theoutput control information but also the copy control information on themedium 15 in the write mode (1) or (2) described above. If the contentsof the copy control information need to be changed, then the recordingprocessing section 14 writes updated copy control information.

The output control information shows whether or not a given content maybe output to another device. As for an audio service provided by theBS/broadband CS digital broadcasting, for example, the Japanese ARIBstandard prohibits the output of an MPEG-2 transport stream (which willbe referred to herein as a “TS”). Accordingly, as to outputting acontent that has been broadcast via such an audio service, a one-bitvalue showing “TS output is prohibited” is generated as output controlinformation for a digital output mode. On the other hand, if the contentmay be output as an analog signal of a standard resolution, then aone-bit value showing “analog output of a standard resolution ispermitted” is generated as output control information for an analogoutput mode. These pieces of output control information are written onthe medium 15 in the mode (1) or (2) described above. Other examples ofthe output control information will be described later, along with aspecific example of the information storage system 10, with reference toFIGS. 19, 28 and so on.

In the foregoing description, the recording processing section 14 issupposed to receive content data, for example, and write the data on themedium 15. However, any component with the function of writing data onthe medium 15 will be regarded as a member of the recording processingsection 14.

Also, in the foregoing description, the recording processing section 14is supposed to generate output control information according to theinput source and the copy control information of the content within thecontent data. However, the recording processing section 14 does not haveto store these rules of correspondence as a table. Alternatively,similar output control information can be naturally generated byproviding a processing program that judges conditions following thoserules of correspondence.

Next, the configuration and operation of an information storage device,which is an exemplary implementation of the information storage system10, will be described with reference to FIG. 7.

FIG. 7 shows an arrangement of functional blocks in an informationstorage device 100 according to this preferred embodiment. Theinformation storage device 100 includes an RF signal input terminal 101,an RF signal processing section 102, an MPEG-TS processing section 103,an encryption processing section 104, a copyright information generatingsection 105, a key generating section 106, a check value generatingsection 107, and a control section 108. A medium 110 is illustrated inFIG. 7. However, in the following description, the medium 110 isremovable from the information storage device 100 and is not a member ofthe information storage device 100. The information storage system 10described above is made up of the information storage device 100 and themedium 110. The medium 110 may be a rewritable Blu-ray disc or anHD-DVD.

The information storage device 100 stores content's data (which will bereferred to herein as “content data”) on the medium 110. According tothe file system of the medium 110, the content data is handled as astream file 112.

To the RF signal input terminal 101, input is an RF signal representinga digital broadcast, for example. The RF signal processing section 102may be a digital tuner, for example, and generates a TS from the RFsignal. The MPEG-TS processing section 103 generates an MPEG partial TS(which will be referred to herein as a “partial TS”) from the TS thathas been got from the RF signal processing section 102. The encryptionprocessing section 104 encrypts the partial TS. The copyrightinformation generating section 105 generates copyright controlinformation (including copy control information and/or output controlinformation) from the TS. The copyright control information will bedescribed later with reference to FIG. 22(a), for example. The keygenerating section 106 generates a cryptographic key based on the keyinformation 111 that is stored in advance on the medium 110. The checkvalue generating section 107 generates a check value based on thecopyright control information and the key. The control section 108controls the overall operation of the information storage device 100. Ifthe information storage device 100 is implemented as an optical diskrecorder, then the control section 108 may be a central processing unit(CPU).

On the medium 110, stored are the key information 111, a stream file 112and an information file 113. The information file 113 includes thecopyright control information and the check value at least. It will bedescribed later how the information storage device 100 operates usingthese pieces of information.

Hereinafter, it will be described how the information storage device 100of the present invention operates. In the following description, theoperation of the information storage device 100 will be outlined first,and then respective components thereof will be described one by one.

An RF signal representing a digital broadcast, which has been inputthrough the RF signal input terminal 101, is transformed by the RFsignal processing section 102 into a TS. In the TS, TS packets, storingvideo and audio data of a plurality of programs, are multiplexedtogether. The MPEG-TS processing section 103 extracts only TS packetsconcerning a designated program from the TS packets that form the TS,thereby generating a partial TS. More specifically, the MPEG-TSprocessing section 103 chooses TS packets concerning the designatedprogram, extracts necessary information from a packet in which a programassociation table (PAT) is stored, and reconstructs a program map table(PMT) for the partial TS.

The key generating section 106 generates a cryptographic key by using adevice ID key (not shown) stored on the information storage device 100and the key information 111 stored on the medium 110.

The encryption processing section 104 encrypts the partial TS by usingthe key that has been generated by the key generating section 106. Theencrypted partial TS is stored as the stream file 112 on the medium 110.

The copyright information generating section 105 extracts necessaryinformation from the TS and generates copyright control informationbased on that information. The check value generating section 107generates a check value by using the key that has been generated by thekey generating section 106 and the copyright control information. Thecopyright information generating section 105 and check value generatingsection 107 respectively write the copyright control information and thecheck value on the information file 113 on the medium 110.

Hereinafter, the respective components of the information storage device100 will be described in further detail. First, the MPEG-TS processingsection 103 generates a partial TS from the TS. FIG. 8(a) shows thearrangement of packets in the TS received by the MPEG-TS processingsection 103 and FIG. 8(b) shows the arrangement of packets in thepartial TS that has been output from the MPEG-TS processing section 103.Each box with a label PAT, V1, etc. corresponds to a single TS packet.Vn, An (where n=1 to 4) and so on represent that the video and audiodata of a program n are included.

The MPEG-TS processing section 103 extracts not only the video and audiopackets V1 and A1 of Program No. 1 but also PAT and PMT1 tables ofprogram association information from the TS shown in FIG. 8(a) andmodifies the contents of those tables for the partial TS. As a result,PAT′ and PMT1′ are included in the partial TS. Also stored in thepartial TS is a selection information table (SIT), including only theinformation concerning a selected program, in place of the serviceinformation (SI) and program specific information (PSI) that areincluded in the TS.

TS packets representing a particular program can be extracted from theTS by performing the following processing. For example, TS packetsrepresenting Program No. 1 may be extracted in the following manner.Suppose the program number (or channel number) of Program No. 1 is X. Inthat case, first, the TS packets are searched for the programassociation table (PAT) packet. More specifically, a packet ID (PID) isassigned to each TS packet. The PID of the program association tablepacket may be zero, for example. Then, the TS may be searched for apacket having that value.

In the program association table in the program association tablepacket, respective program numbers and the program map table (PMT)packet IDs of respective programs associated with those program numbersare stored. Thus, the packet ID (PID) of the program map table (PMT)associated with the program number X can be detected. The PID of theprogram map table PMT is supposed to be XX.

Next, when a packet with PID=XX is extracted, a program map tableassociated with the program number X can be obtained. The program maptable PMT includes the PIDs of TS packets, in which the video, audio andother information of each program to watch and listen to is stored. Forexample, the PID of the video information associated with the programnumber X may be XV and the PID of the audio information thereof may beXA. By using the PID (=XV) of the packet storing the video informationand the PID (=XA) of the packet storing the audio information, the videoand audio packets about a particular program content can be extractedfrom a single TS.

In making a partial TS from a TS, the program association table PAT andprogram map table PMT need to be corrected. This is because the originalTS and the partial TS include different numbers of programs, andtherefore, the program association table PAT and the program map tablePMT need to be adapted to the partial TS. Also, the original TS includesSI packets. An SI packet includes data describing the contents,schedule/timings and so on of the programs included in the original TSand separately defined expansion information (which is also called“program service information”). In the original TS, the SI packetincludes as many as 20 to 30 different types of data. Among these typesof data, only important data for playing the partial TS is extracted togenerate a single SIT packet and multiplex it in the partial TS.

FIG. 9 shows an arrangement of functional blocks in the MPEG-TSprocessing section 103. The MPEG-TS processing section 103 generates apartial TS from the TS by using the components shown in FIG. 9. Itshould be noted that the TS and the partial TS are just as shown inFIGS. 8(a) and 8(b), respectively.

The MPEG-TS processing section 103 includes a TS demultiplexing section301, a first service selecting section 302, an SIT constructing section303, a second service selecting section 304, and a TS multiplexingsection 305.

On receiving a TS in which four contents have been multiplexed together,the TS demultiplexing section 301 demultiplexes the TS into its elementsincluding service information (SI), program specific information (PSI),and is elementary stream (ES). The service information (SI) and programspecific information (PSI) are generic terms of the structure (called a“table”) shown in FIG. 10, which lists the service information (SI) andprogram specific information (PSI) that are used in a TS. In each ofthese tables, respective pieces of information are arranged in apredefined order. Elementary streams ES are defined for the video dataand audio data of each program. For example, the elementary stream ESconcerning the video of program n is separately stored in TS packets Vn.In FIG. 9, the video and audio elementary streams of the program n arecollectively identified by ESn for convenience sake.

The first service selecting section 302 extracts a portion, specifyingthe PID of a TS packet that transmits the program map table PMTassociated with the partial TS of a designated program, from the programassociation table PAT, in which multiple sets of program information arestored, thereby generating PAT′.

The SIT constructing section 303 extracts only a portion defining theservice information and program specific information about a designatedprogram from the tables representing the service information (SI) andprogram specific information (PSI) of multiple programs included in theTS, thereby newly compiling a selection information table SIT.

The second service selecting section 304 selectively gets only the ES ofthe designated program from the ES of respective programs that have beenseparated by the TS demultiplexing section 301. The second serviceselecting section 304 also gets a program map table PMT associated withthe ES acquired and then outputs not only the ES acquired but also theprogram map table PMT, from which the portion specifying the PID of thepacket where the ES divided data is stored has been extracted. In FIG.9, for example, the second service selecting section 304 outputs ES1(including V1 and A1) about Program No. 1 and PMT1 associated with thatES1. Optionally, the second service selecting section 304 may also storethe copyright control information (to be described later) on the programmap table PMT and then output the program map table PMT. The program maptable PMT of the present invention will be described in detail laterwith reference to FIG. 11.

The TS multiplexing section 305 multiplexes together the programassociation table PAT′, selection information table SIT, elementarystream ES and program map table PMT of the designated program, therebymaking a partial TS.

In this manner, a partial TS, including only the information of aparticular program, is reconstructed from a TS including the informationof multiple programs. This partial TS is encrypted by the encryptionprocessing section 104 (to be described later) and then stored in thestream file 112 of the medium 110.

Next, the key generating section 106 will be described with reference toFIG. 7 again. First, the key generating section 106 reads the keyinformation 111 from the medium 110. The key information 111 includes amedium key block MKB and a medium ID. The medium key block MKB wasrecorded on the medium being manufactured and can be read but cannot berewritten. The medium ID was also recorded on the medium beingmanufactured so as not to be rewritable. The medium ID is a unique valuegiven to each individual medium.

The key generating section 106 calculates the value of the medium keybased on the medium key block MKB and the device ID key. The device IDkey is a unique value that was given to each recorder during itsmanufacturing process and is stored so as not to be exposed by a normalmethod. If the same MKB is used, then the same medium key is obtainedfrom the device ID key of any device. The medium key thus obtained is anelectronic key used for copyright protection purposes.

It should be noted that to cope with a situation where a device ID keyhas been read illegally, information invalidating that device ID key maybe stored in the MKB such that the medium key cannot be generated fromthe device ID key.

Next, the key generating section 106 calculates a medium ID key based onthe medium key that has been calculated in advance and the medium IDstored in the key information 111. The medium ID key is written on themedium 110. The medium ID key is used to encrypt a title key (not shown)and to calculate a check value as will be described later. To guaranteethe security of cryptography and check values, various semiconductorsand interconnects are arranged so as to deter illegal reading of themedium key and the medium ID key.

Next, the copyright information generating section 105 will be describedin detail.

The copyright information generating section 105 also receives the TSfrom the RF signal processing section 102. As described above, theservice information (SI) and program specific information (PSI) shown inFIG. 10 are included in the TS. The standard permits the serviceinformation (SI) and program specific information (PSI) to store anarbitrary number of structures called “descriptors” at particularlocations. FIG. 11 shows an exemplary data structure of a program maptable PMT. In the program map table PMT, arbitrary descriptors may beinserted into locations that are called “first loop” and “second loop”,respectively.

Examples of descriptors insertable into these locations include adigital copy control descriptor and a content availability descriptor,each of which is a descriptor contributing to copyright protection indigital broadcasting. Hereinafter, the data structures of these twodescriptors will be described with reference to FIGS. 12 through 16.

FIG. 12 shows the data structure of a digital copy control descriptor.The digital copy control descriptor is provided to define controlinformation about digital copying or analog copying or to describe amaximum transfer rate for the overall service.

In the two fields digital_recording_control_data and copy_control_typeof the digital copy control descriptor, copyright protection informationis described as pointed by the upper two arrows in FIG. 12.

The copy_control_type field has a two-bit value representing informationabout the form of copy generation control. FIG. 13(a) showscorrespondence between a two-bit value described in thecopy_control_type field and the operation of the information storagedevice 100 associated with that value. For example, if the value in thecopy_control_type field is “01”, then the information storage device 100encrypts given content data and then outputs the encrypted data to theserial interface (through the IEEE 1394 bus). On the other hand, if thevalue in the copy_control_type field is “11”, then the informationstorage device 100 outputs the content data to the serial interfacewithout encrypting it.

The digital_recording_control_data field includes information about thecopy generation control. The operations associated with the values inthis field are defined so as to apply to the situation where the valuein the copy_control_type field is “11” or “01” (i.e., where the contentdata is output through the IEEE 1394 bus). Specific operations are justas shown in FIG. 13(b), which shows correspondence between a two-bitvalue described in the digital_recording_control_data field and theoperation of the information storage device 100 associated with thatvalue.

Furthermore, in the APS_control_data field pointed by the thirduppermost arrow in FIG. 12, information for controlling an analogprotection system that can be added to an analog video signal isdescribed. As used herein, the “analog protection system” may mean a“Macrovision signal” and is known as an analog copy control signal(which is called an “AGC (automatic gain control)” or “Corol Stripes”)licensed by Macrovision Corporation. More specifically, unless the valuein the digital_recording_control_data field is “11” and unless the valuein the APS_control_data field is “00”, the Macrovision signal is added.There are some storage media that can inherit the APS_control_datafield. For example, a content, of which thedigital_recording_control_data field has a value “10”, may be recordedas “no copying permitted anymore”. And when the “no copying permittedanymore” content is played back, the Macrovision signal may be added tothe analog video output according to the value in the APS_control_datafield inherited by the storage medium.

If the value in the copy_control_type field is “01”, then the content isencrypted and output to the serial interface according to predeterminedoperation rules. FIG. 14 shows exemplary operating rules on contentprotection. In the “output protection” column, “operation permitted” or“operation prohibited” indicates whether the output of a “copyingpermitted without restrictions” content to the high-speed digitalinterface (i.e., the IEEE 1394 bus) should be protected or not by usingthe output protection bit (encryption_mode) of the content availabilitydescriptor.

In FIG. 14, as to a free, non-content-protected program (i.e., aprogram, of which the content is not protected using cryptography, forexample, in broadcasting waves), only “00” (corresponding to “copyingpermitted without restrictions”) can be set as a value in thedigital_recording_control_data field. It should be noted that if thevalue in the copy_control_type field is “11”, then the operation ruleson content protection shown in FIG. 14 are not applied. Thus, setting inthe digital_recording_control_data field is solely up to thebroadcaster.

Next, the content availability descriptor will be described withreference to FIG. 15, which shows the data structure of the contentavailability descriptor.

The content availability descriptor is defined to describe controlinformation about the storage of data on a medium and the output thereofwith respect to a program. Among various fields described as the contentavailability descriptor, copyright protection information is describedas a one-bit value in the encryption_mode field pointed by the arrow.More specifically, the encryption_mode field is used to protect theoutput through a high-speed digital interface (such as an IEEE 1394bus). FIG. 16 shows the contents of processing to be done according tothe bit value in the encryption_mode field.

It should be noted that the digital copy control descriptor and contentavailability descriptor may be described not just in the program maptable PMT but also in a service description table (SDT) or in an eventinformation table (EIT).

FIG. 17 shows the data structure of a service descriptor. The servicedescriptor is a parameter defined in the service description table (SDT)mentioned above and describes a parameter showing the source of theinput signal. This parameter is called a “service type”. In the digitalbroadcasting, for example, a digital TV service providing digital videocontents, a digital audio service providing digital audio contents, adata service providing data contents such as character information andother service types are defined. The service type is described in theservice_type field of the service descriptor. In FIG. 17, theservice_type field is pointed to by the arrow. FIG. 18 showscorrespondence between a possible value in the service_type field andits associated service. The copyright protection is defined slightlydifferently according to the service type, but the specific differencewill be described later.

In digitally recording a digital broadcast content on a removablemedium, the copyright protection mode of the removable medium needs tobe set in accordance with the copy control information added to thecontent. FIG. 19 shows exemplary rules on a copyright protectionrequirement according to a given service type and a parameter valueassociated with the requirement when a content is recorded digitally.

For example, TV service related contents may have their copyrightprotected in the following manner. Specifically, if the value in thecopy_control_type field of the digital copy control descriptor is “11”,then the content is processed as non-recordable. On the other hand, ifthe value in the copy_control_type field of the digital copy controldescriptor is “01”, the value in the digital_recording_control_datafield is “00” and the value in the encryption_mode field is “1”, thenthe content is regarded as “copying permitted without restrictions” andrecorded on the removable medium without restrictions. In that case, theencryption processing section 104 does not carry out any encryptionprocess on the data stream representing the content. Meanwhile, if thevalue in the encryption_mode field is “0”, then it is interpreted as“encryption plus non-assertion (EPN)” and the content is recorded. The“EPN” means that the content may be copied without restrictions but mustbe recorded with encryption.

On the other hand, if the value in the digital_recording_control_datafield of the digital copy control descriptor is “10” (see FIG. 13(b)),then it is interpreted as “copying permitted only one generation” andthe content may be recorded on the medium. However, once the content hasbeen recorded, no recording is permitted any longer. Thus, the copyrightinformation generating section 105 changes the copy control informationinto “no copying permitted anymore” and the encryption processingsection 104 records an encrypted content.

If the value in the digital_recording_control_data field of the digitalcopy control descriptor is “11”, then it is interpreted as “copyingprohibited” (see FIG. 13(b)). Thus, no recording of the data streamrepresenting the content is permitted in that case. In the column“MPEG-TS output during playback” in FIG. 19, “Mode B” and “Mode C”represent copy control requirements according to the transmission modeof the DTCP (data transmission content protection). Specifically, “ModeB” represents “copying permitted only one generation”, while “Mode C”represents “no copying permitted anymore”. When a device including adigital broadcast receiver outputs a content through an IEEE 1394interface, the content is encrypted and then transmitted.

Similar processing is also carried out on digital recording and outputof an audio service or a data service. Suppose a content that has beenprovided by an audio service is output as an MPEG-TS. In the outputcontrol information of that content, if the value in thecopy_control_type field is “01” and if the value in thedigital_recording_control_data field is “10”, then output in the form ofan MPEG-TS is prohibited.

As shown in FIG. 19, if the service type is a TV service, a content,which may be recorded digitally on a removable medium, may also beoutput as a TS during the playback. In the audio service on the otherhand, only a “copying permitted without restrictions” content can beoutput as a TS. However, an “EPN” or “no copying permitted anymore”content may not be output as a TS.

The copyright information generating section 105 generates outputcontrol information on an output format basis in accordance with theinformation included in the input signal during recording and followingthe rules of copyright protection according to the input source asretained in the information storage device 100. The copyright protectionrules may be retained either by storing the contents shown in FIG. 19 asa table or by executing a processing program for deciding conditionsaccording to the rules. Also, if the contents of the copy controlinformation need to be changed, the copyright information generatingsection 105 updates the copy control information. Hereinafter, it willbe described how the output control information generated by thecopyright information generating section 105 is written on the medium110.

FIG. 20 shows a hierarchy established by the file system of the medium110. In this file system, a directory called “AV” 2002 is provided rightunder a root 2001. The information storage device 100 stores a datastream and other audiovisual related data on the directory AV 2002 andother lower-order layers. A set of mutually related data is handled as a“file”.

Under the directory AV 2002, arranged are the three directories of aplayback control directory 2003, a stream management directory 2004 anda stream directory 2005.

In the stream directory 2005, files corresponding to the partial TS andincluding a first stream file 2010, a second stream file 2011 and athird stream file 2012 are stored. This partial TS has been encryptedand output by the encryption processing section 104. In the streammanagement directory 2004, stored are a first information file 2007, asecond information file 2008, a third information file 2009 and so onfor managing the respective stream files that are stored in the streamdirectory 2005. In the playback control directory 2003, information onthe order of playing back the respective stream files that are stored inthe stream directory 2005 is stored. An information file is generatedfor each and every stream file. As to the medium shown in FIG. 7, justone stream file 112 and only one information file 113 are shown for thesake of simplicity.

An output control flag and copy control information, representing theoutput control information on an output format basis, are stored as acopy status descriptor in the partial TS. FIG. 21(a) shows the datastructure of a copy status descriptor. FIG. 21(b) shows the datastructure of a private_data_byte field included in the copy statusdescriptor. FIGS. 21(c), 21(d) and 21(e) show the definitions of EPN,copy control information and output 1 and 2 fields that are defined inthe private_data_byte field.

The outputs 1 and 2 shown in FIG. 21(e) are output control flags showingwhether or not the stored content in question may be output in theiroutput modes during the playback. For example, output 1 may represent aTS and output 2 may represent an analog output with standard definition(SD) including accompanying analog audio. In recording a TV service,outputs 1 and 2 are both set “enabled”. Meanwhile, in recording an audioservice as “EPN” or “no copying permitted anymore”, output 1 (TS) isdisabled (i.e., output prohibited) and output 2 is enabled. It should benoted that the copy control information of the copy status descriptoralso defines “copying permitted only one generation” so as to beapplicable to an original content, too.

The copy status descriptor stores the copy control information and theoutput control flags described above in private_data_byte. The copyrightinformation generating section 105 always analyzes the TS, generates anew copy status descriptor when there is a factor that changes the copycontrol information or output control flags, and sends it to the MPEG-TSprocessing section 103. In making a program map table PMT, the MPEG-TSprocessing section 103 inserts the copy status descriptor. The copystatus descriptor is inserted into the first loop (see FIG. 11) of thePMT. If some special copyright control information is assigned to theelementary stream representing a content, another copy status descriptoris inserted into the second loop associated with that elementary stream.

The contents of the information described by the copy status descriptorare not always fixed through a single content but may change sometimes.For example, if a copyright owner makes only a particular portion of acontent “copying permitted only one generation” and makes the remainingportions “copying permitted without restrictions”, then the contents ofthe copyright control information may change within the same content.Also, if a plurality of contents with mutually different degrees ofcopyright protection have been recorded continuously and handled as asingle content as a result, the copyright control information may alsochange within the same content. Hereinafter, the latter example will bedescribed.

Suppose in a situation where a digital broadcasting audio service hasbroadcast two programs (e.g., news and music programs) in a row, whattype of processing the information storage device 100 should do torecord them as a single content. Also, suppose copy control informationshowing “copying permitted without restrictions” is set for the newsprogram and copy control information showing “copying permitted only onegeneration” is set for the music program. Then, while the news programis being recorded, the output control flag that permits the output of aTS is set by the output 1. And when the music program starts beingrecorded after the news program is over, the output control flag thatprohibits the output of the TS is set. Also, if the input sources arechanged from “audio service” into “TV service” while a digitalbroadcasting content is being recorded by the information storage device100, the output control flag of output 1 (i.e., IEEE 1394 bus) changesfrom “output disabled” into “output enabled”. It should be noted thatthe copy status descriptor embedded as a descriptor in a partial TS isencrypted and stored as a portion of the stream file 112 on the medium110. Thus, the copy status descriptor is never modified on the medium.

Also, the output control flag, which is output control information forevery output mode, and the copy control information (or copyrightcontrol information) are stored not only in a data stream but also in aninformation file 113. FIG. 22(a) shows an exemplary data structure ofthe copyright control information generated by copyright informationgenerating section 105. The copyright control information shown in FIG.22(a) is described in the information file 113 on the medium 110.

The outputs 1, 2 and so on shown in FIG. 22(a) are output control flagsshowing whether or not the stored content in question may be output intheir output modes during the playback. For example, output 1 mayrepresent a TS and output 2 may represent an analog output with standarddefinition (SD) including accompanying analog audio. In recording a TVservice, outputs 1 and 2 are both set “enabled”. Meanwhile, in recordingan audio service as “EPN” or “no copying permitted anymore”, output 1(TS) is disabled and output 2 is enabled.

One information file 113 is provided for each content (i.e., each streamfile). That is why each information file 113 stores copyright controlinformation for its associated content as a whole. If the contents ofthe copyright control information change within a single content (e.g.,if some portions are output enabled but the other portions are outputdisabled), then the entire content is made “output disabled”, which isthe strictest type of control.

FIG. 22(b) shows the values of copy control information (CCI) and thedefinitions of its associated copy controls. The two-bit values shown onthe left column of FIG. 22(b) are described as the “copy controlinformation” shown in FIG. 22(a). The copy control information shown inFIG. 22(b) shows “copying permitted without restrictions”, “EPN” or “nocopying permitted anymore”. “EPN” is asserted in a situation where copycontrol information=“10” (i.e., “copying permitted without restrictions”and “EPN asserted”). Since this copy control information is defined fora storage medium, there is no “copying permitted only one generation”.This is because the copy control information of a content that has beenprovided as “copying permitted without restrictions” and “EPN asserted”from an input source is stored as it is and because a content providedas “copying permitted only one generation” is updated into “no copyingpermitted anymore” once recorded on a medium.

The check value shown in FIG. 22(a) is generated by the check valuegenerating section 107. The check value is used during playback to seeif the output control flag, copy control information or any otherinformation has not been altered illegally. The check value generatingsection 107 generates the check value based on the output control flag,copy control information and key information.

As can be seen from FIGS. 22(a) and 21(b), the copy control information,outputs 1 and 2 and other common information are described in therespective fields of the copyright control information and those of thecopy status descriptor.

Optionally, multiple pieces of copyright control information may begenerated for a single content such that the content is subjected tomultiple copy controls. FIG. 23 shows how (a portion of) copyrightcontrol information may be described when multiple pieces of copycontrol information are defined for a single content. As shown in FIG.23, the start address of a portion of the content, to which the copycontrol information starts to be applied, and the copy controlinformation may be defined in combination and the copy controlinformation may be described for each combination. As a result, the copycontrol information may be defined for each portion of the content andmore specific copyright protection is realized even without checking thecopy status descriptor embedded in the content.

Next, the check value generating section 107 will be described in moredetail. To generate the check value, a unidirectional function G (d1,d2) is used. When using the unidirectional function, it is difficult toperform reverse calculations due to its nature. In other words, if theunidirectional function G and the d1 and d2 values are used, k=G (d1,d2) can be calculated easily. However, it is difficult to obtain d2 fromk and d1.

Supposing d1 is a data value to be checked with the copyright controlinformation and d2 is the value of a medium ID key, the check valuegenerating section 107 can calculate the check value k from d1 and d2.Then, the check value generating section 107 writes this data value d1to be checked and the check value k on the information file 113 on themedium 110. The medium ID key d2 is strictly managed by the informationstorage device 100 so as not to leak to the outsiders.

Hereinafter, the processing done by the information storage device 100to record a content on the medium 110 will be described. In thefollowing example, the information storage device 100 is supposed toreceive a digital broadcast signal.

FIG. 24 shows the procedure of the recording processing done by theinformation storage device 100. First, in Step S241, the RF signalprocessing section 102 receives a digital broadcast signal (TS) throughthe RF signal input terminal 101. Next, in Step S242, the MPEG-TSprocessing section 103 generates a partial TS, representing the contentto be is recorded, from the received signal (TS). Also, in Step S243,the MPEG-TS processing section 103 extracts information about thecopyright protection of that content from the partial TS and sends it tothe copyright information generating section 105.

Then, in Step S244, the copyright information generating section 105generates output control information on an output format basis inaccordance with the extracted information and the rules of the copyrightprotection and sends it to the MPEG-TS processing section 103. Inresponse, the MPEG-TS processing section 103 stores the output controlinformation in the partial TS in Step S245. Next, in Step S246, when thekey generating section 106 generates a cryptographic key by using thedevice ID key and the key information 111, the encryption processingsection 104 encrypts the partial TS with that cryptographic key. In themeantime, the check value generating section 107 generates a check valuebased on the data value d1 to be checked, including the copyrightcontrol information, and the medium ID key value d2.

Subsequently, in Step S247, the encryption processing section 104 writesthe encrypted partial TS as a stream file 112 on the medium 110. Then,the copyright information generating section 105 writes the outputcontrol information as an information file 113 on the medium 110 and thecheck value generating section 107 also writes the check value on theinformation file 113. In this manner, the information storage device 110writes the data of the content, along with the copyright controlinformation, on the medium 110.

Hereinafter, the configuration and processing of an information playbacksystem for playing back a content from the medium 110 will be described.FIG. 25 shows an arrangement of functional blocks in an informationplayback system 20 according to this preferred embodiment. Theinformation playback system 20 can read digital data, representing acontent, from a medium 15, for example, and play back the content.Specific examples of the information playback systems 20 include a DVRsystem, an HDR system and so on that are similar to the informationstorage system 10. The medium 15 is a medium that forms a part of theinformation storage system 10 and is supposed to store digital data(partial TS) representing a particular content.

The information playback system 20 includes a playback processingsection 21, a decoder 22 and an output control section 23.

The playback processing section 21 reads a partial TS, representing aparticular content, from the storage medium 15 or receives the partialTS over a network 16 such as the Internet. In playing back the content,the playback processing section 21 outputs the partial TS to the decoder22 (as pointed by the solid arrow). On the other hand, in justoutputting the partial TS without playing back the content, the playbackprocessing section 21 outputs the partial TS to the output controlsection 23 directly (as pointed by the dashed arrow).

The decoder 22 gets and decodes the partial TS that has been compressedand encoded. Also, if the partial TS has been encrypted, then thedecoder 22 decodes the encrypted TS.

By reference to the output control information stored in the partial TS,the output control section 23 determines whether the playback or outputof that content is permitted or not. If it has been determined that theplayback is permitted, then the output control section 23 outputs abaseband signal that can be played or reproduced on a player such as avideo display device or an audio output device. The output controlsection 23 also determines, by reference to the output controlinformation, whether the content may be output digitally or not. If ithas been determined that the content may be output digitally, then theoutput control section 23 outputs an encrypted content. Optionally,depending on the specifications of the sender and receiver devices, notjust the content but also the output control information may be outputdigitally by way of an IEEE 1394 interface, for example. The outputcontrol information may be exchanged digitally between devices producedby the same manufacturer, for example. It should be noted, however, thatnot every receiver device can interpret the output control information.Meanwhile, if the playback or output is prohibited, then the outputcontrol section 23 does not output the content data outside of theinformation playback system 20.

Hereinafter, the configuration and operation of an information player ina situation where the information playback system 20 is implemented asthe information player will be described with reference to FIG. 26.

FIG. 26 shows an arrangement of functional blocks in an informationplayer 200 according to this preferred embodiment. The informationplayer 200 includes a key generating section 201, a decoding processingsection 202, an MPEG-PTS decoding section 203, a check value generatingsection 204, a checking section 205, an output control section 206, afirst output terminal 207, a second output terminal 208, and a controlsection 209. It should be noted that the medium 110 is a removablemedium that can be removed from the information player 200 and is not acomponent of the information player 200. The information playback system20 described above is made up of the information player 200 and themedium 110.

The key generating section 201 generates a cryptographic key based onthe key information 111 that is stored on the medium 110. The decodingprocessing section 202 decodes the partial TS that has been encryptedand stored in the stream file 112 on the medium 110. The MPEG-PTSdecoding section 203 decodes the partial TS that has been compressed andencoded, thereby generating a baseband signal.

The check value generating section 204 generates a check value based onthe key and the copyright control information included in theinformation file 113. Following the example that has been described forthe check value generating section 107 of the information storage device100, the check value generating section 204 reads the data to be checkedd1 and the check value k from the medium 110 and internally generatesthe same medium ID key d2 as that generated by the information storagedevice 100. Then, the check value generating section 204 substitutes thedata to be checked d1 and medium ID key d2 into the unidirectionalfunction G, thereby generating the check value k.

The checking section 205 compares the check value that has beengenerated by the check value generating section 204 with that stored inthe information file 113. If the copyright control information wasaltered and the data to be checked was changed into d1′, then the checkvalue would not be k but k′. That is why by comparing the check value kthat has been read out from the medium 110 with the generated one, itcan be determined whether or not the copyright control information orthe check value has been altered. As described above, the medium ID keyd2 is managed strictly inside the device and it is very difficult tofigure out d2 based on the copyright control information d1 and thecheck value k. For that reason, it is very difficult to store the checkvalue k′ associated with the altered copyright control information d1′on the medium 110.

The output control section 206 controls the output in accordance withthe copyright control information and the result of check. The firstoutput terminal 207 can output the partial TS in its original digitalformat and may be an IEEE 1394 terminal. On the other hand, the secondoutput terminal 208 may output a baseband signal to play back thecontent and may be an NTSC terminal, for example.

The control section 209 controls the overall operation of theinformation player 200. If the information storage device 100 isimplemented as an optical disk recorder, then the control section 209may be a central processing unit (CPU).

Hereinafter, the processing done by the information player 200 to playback a content from the medium 110 will be described. FIG. 27 shows theprocedure of the playback processing done by the information player 200.First, in Step S271, the information player 200 reads the keyinformation 111, stream file 112 and information file 113 from themedium 110. In this processing step, the information player 200 alsoreads the device ID key (not shown) that is stored inside.

Next, in Step S272, the key generating section 201 generates acryptographic key (i.e., a medium ID key) for use in encryption based onthe key information 111 and the device ID key (not shown). Then, thedecoding processing section 202 decodes the encrypted stream file 112that is stored on the medium 110 (i.e., decodes the encrypted partialTS). Subsequently, in Step S273, the decoding processing section 202sequentially extracts the copy status descriptor from the partial TS andthe copyright control information from the information file 113,respectively.

In parallel with this processing step, the MPEG-PTS decoding section 203decodes the partial TS and extracts a baseband signal. In the meantime,the check value generating section 204 generates a check value based onthe medium ID key and the copyright control information of theinformation file 113 that is stored on the medium 110 as well as thecheck value generating section 107. The checking section 205 sees if thecheck value generated agrees with that stored in the information file113.

Next, in Step S274, the output control section 206 determines, by thecontents of the copy status descriptor, whether the content in thepartial TS may be output or not. As described above, the copy statusdescriptor is embedded in the partial TS.

More specifically, the output control section 206 performs the followingprocessing. First, by checking the copy status descriptor, the outputcontrol section 206 determines the content to be played back is “copyingpermitted without restrictions”, “EPN” or “no copying permittedanymore”.

Also, by checking the output control flags of outputs 1 and 2 in thecopy status descriptor, the output control section 206 determineswhether or not the content may be output through the respective outputterminals. As a result of this decision, the process branches in StepS275. That is to say, if the output is permitted, then the processadvances to Step S276. Otherwise, the process advances to Step S277.

If it has been discovered as a result of the check made by the checkingsection 205 that the copyright control information stored on the medium110 has been altered, then the output control section 206 may treat thecontent specified as “EPN” as “no copying permitted anymore”. Thisprocess has the following advantage. Specifically, if the copyrightcontrol information of a content that has been specified as either “nocopying permitted anymore” or “EPN” is altered into “copying permittedwithout restrictions”, then the receiver device will take the receivedcontent for a non-encrypted one and will not perform the decodingprocess. As a result, the encrypted partial TS will be output as it is.This partial TS cannot be decoded and is virtually invalid data.Consequently, the copyright of the content can be protected.

In Step S276, the output control section 206 outputs the contentsequentially. If it has been determined in Step S275 that the output isnot permitted (e.g., if a content provided by a digital broadcastingaudio service has been recorded and if the flag of the output 1 (IEEE1394 interface) is set as “output disabled”), then the content is notsupplied to the first output terminal 207.

Then, in Step S277, the output control section 206 determines whetherthe playback and output of the content (i.e., the output of the partialTS representing the content) is finished or not. If the answer is YES,the playback processing by the information player 200 ends. Otherwise,the process goes back to the processing step S273 and the sameprocessing steps are repeatedly carried out from that processing stepon. It should be noted that the copyright control information in thecopy status descriptor may sometimes change even within the samecontent. That is why the decision of the processing step S275 may bemade at regular intervals. For example, if the input sources are changedfrom “audio service” into “TV service” while a digital broadcast contentis being recorded by the information storage device 100, then the flagof the output 1 (IEEE 1394 interface) changes from output disabled intooutput enabled. If it has been determined in Step S275 that the outputis permitted, then the output control section 206 performs a controloperation so as to output that portion of the content, of which theoutput is permitted, to the first output terminal 207.

In this manner, the information player 200 can play back the contentstored on the medium 110 while guaranteeing appropriate copyrightprotection for that content.

If a digital data stream representing a partial TS is output through thesecond output terminal 208 without decoding the partial TS, then thecopy status descriptor in the partial TS do not have to be decoded butthe output control may be carried out based on only the copyrightcontrol information that has been read out from the information file113. A player that can decode a partial TS can usually decode the copystatus descriptor in the partial TS. However, only if the data structureof the information file 113 can be analyzed, the processing ofoutputting the partial TS as a mere bit stream without decoding it maybe carried out. Accordingly, even if the TS decoder is not provided oris not operated, the output control can also be done appropriately andconveniently. Even so, if the copy status descriptor in the partial TScan be interpreted, then the control may naturally be performed inaccordance with the copy status descriptor.

In the preferred embodiment described above, it is determined as anexemplary output control whether the output through the output terminalis permitted or not. However, the object of the output control is notlimited to that situation. Alternatively, the object of control may alsobe whether the information about an analog protection system (APS) orcopy generation management system (CGMS) is applicable or not.

Also, in the preferred embodiment described above, the copyright controlinformation is stored in the content by embedding the copy statusdescriptor in the partial TS. However, the present invention is in noway limited to that specific preferred embodiment. Alternatively, aheader may be newly provided for an MPEG packet such that the copyrightcontrol information is stored in the header.

Furthermore, in the preferred embodiment described above, the checkvalue is added to the information file 113. However, the check value mayalso be added to the stream file 112. For example, when copyrightcontrol information including the output control information is storedat a top portion of a packet of each partial TS, the content itself canbe protected by cryptography even without encrypting the top portion. Toprevent the copyright control information from being altered, however,the check value may be added. The check value may be calculated and thecopyright control information may be checked for alternation just asdescribed above.

In the example described above, rules that are set between requirementsfor copyright protection according to a service type and parametervalues associated with the requirements have been set forth withreference to FIG. 19. However, FIG. 19 is just an example and otherrules are applicable as well. For example, FIG. 28 shows another exampleof the rules shown in FIG. 19.

Unlike the rules shown in FIG. 19, even if the value in thecopy_control_type field of the digital copy control descriptor is “11”,the content is recordable on a removable medium on some outputconditions according to the rules shown in FIG. 28.

Another difference will be pointed out. Specifically, if the value inthe copy_control_type field is “11” and if the value in thedigital_recording_control_data field of the digital copy controldescriptor is “00” and if it is “copying permitted withoutrestrictions”, then the content is recordable on the medium withoutrestrictions. The MPEG-TS processing section 103 (see FIG. 7) records acontent on the medium 110 without encrypting the content. If the valuein the digital_recording_control_data field of the digital copy controldescriptor is “10” and if it is “copying permitted only one generation”,then the MPEG-TS processing section 103 sets the copy controlinformation on the removable medium into “no copying permitted anymore”and the output of the MPEG-TS during playback is prohibited. Meanwhile,if the value in the digital_recording_control_data field is “01” or“11”, then the storage of the content data is prohibited.

As shown in FIG. 19, if the copy_control_type of the digital copycontrol descriptor is “11”, then a “copying permitted withoutrestrictions” content may be output as an MPEG-TS but a “no copyingpermitted anymore” content may not be output as an MPEG-TS.

The copyright information generating section 105 can generate outputcontrol information by using the rules of output control about an inputsource (digital broadcast) as retained in the information storage device100 and the values in the digital_recording_control_data andcopy_control_type fields that are included in the input signal duringrecording.

The output control information thus generated is stored as an integralpart of the copy status descriptor shown in FIG. 21(a) or incorporatedinto a TS. The output control information may also be stored in theinformation file 113. Their details are just as already described.

As can be seen, even by applying the rules shown in FIG. 28, theinformation player 200 can also play back the content from the medium110 appropriately, or output the digital data representing the content,according to the type of the input source while protecting itscopyright.

Embodiment 2

An information storage device that realizes copyright protection onhigh-definition video will be described as a second specific preferredembodiment of the present invention.

In this preferred embodiment, an example in which the informationstorage device locates the source of an input signal and generatesoutput control information according to the type of the source will bedescribed.

FIG. 29 shows an arrangement of functional blocks in an informationstorage device 120 according to this preferred embodiment. Theinformation storage device 120 can process high-definition video at itsinput and output. For that purpose, the information storage device 120adds copyright control information so as to permit outputtinghigh-definition video only in a format that guarantees copyrightprotection and stores a data stream on the medium. The informationstorage device 120 includes an optical disk reading section 121, theMPEG-TS processing section 103, the encryption processing section 104,the copyright information generating section 105, the key generatingsection 106, the check value generating section 107 and the controlsection 108. Any component having the same function as the counterpartof the information storage device 100 shown in FIG. 7 is identified bythe same reference numeral and the description thereof will be omittedherein.

The optical disk reading section 121 is loaded with an optical disk ROMmedium (not shown) in which high definition video data stream is stored.This optical disk ROM medium may be a read-only Blu-ray Disc or HD-DVD,for example.

Generally speaking, a content stored on an optical disk ROM medium hasbeen encrypted to deter illegal playback and illegal duplication. Only adevice that has been licensed by a content protection system usingcryptography can decode the encrypted content. If rules of output,copying and so on have been set as licensing conditions, then a licenseedevice must have processing functions so as to meet those rules.

The optical disk reading section 121 identifies a given optical disk ROMmedium. If the content stored on the medium has been encrypted followingthe licensing conditions, then the optical disk reading section 121decodes the content into a decrypted data stream.

The information storage device 120 instructs the optical disk readingsection 121 to read out the decrypted data stream from the optical diskROM medium and to store it on the medium 110 on which high-definitionvideo can be stored. In this case, the information storage device 120generates copyright control information and writes it on the medium 110along with the data stream such that analog output of thehigh-definition video is prohibited but only digital output thereof ispermitted in accordance with the output rules that were set as licensingconditions. Only the digital output is permitted because digital datacould have its copyright protected by utilizing cryptographictechnologies.

In writing the data stream, which has been stored on the optical diskROM medium, on the medium 110, the copyright information generatingsection 105 generates output control information that makes analog video“output disabled” and digital video “output enabled”, respectively.

The analog video may be output through a pin terminal (i.e., a compositesignal output), an S terminal, D1 through D5 terminals, or an RGBcomponent terminal, for example. Meanwhile, the digital video may beoutput through a high-definition multimedia interface (HDMI), a digitalvisual interface (DVI), an IEEE 1394 interface, a USB port, an Ethernetport, or an xDSL port.

As digital data encryption technologies, High-bandwidth Digital ContentProtection (HDCP) for DVI and HDMI and IP-transmitting DTCP compliantwith the IEEE 1394, USB, Ethernet or xDSL are known.

Optionally, the copyright information generating section 105 may changethe contents of the output control information according to theresolution of the video. For example, even analog video may be output ata standard resolution (i.e., as interlaced video with 480 horizontalscan lines or progressive video) but may not be output at a resolutionexceeding the standard resolution. As used herein, the “resolutionexceeding the standard resolution” may be that of the output (at a D3terminal) of interlaced video (1080i) with 1,080 horizontal scan lines,the output (at a D4 terminal) of progressive video (720p) with 720horizontal scan lines, or the output (at a D5 terminal) of progressivevideo (1080p) with 1,080 horizontal scan lines.

Furthermore, the copyright information generating section 105 may alsogenerate output control information in which only an output compliantwith a copy generation control technology called “Copy GenerationManagement System-Analog (CGMS-A)” and/or only analog video associatedwith the output of a Macrovision signal are “output enabled” followingthe output rules that were set as licensing conditions. As used herein,the “Macrovision signal” is known as an analog copy control signal(which is called an “AGC (automatic gain control)” or “Corol Stripes”)licensed by Macrovision Corporation.

It should be noted that depending on the recording format of the opticaldisk ROM medium, the MPEG-TS processing section 103 may be omittedaltogether or its processing may be simplified. Also, if the recordingformat of the optical disk ROM medium that has been inserted into theoptical disk reading section 121 is MPEG-PS (i.e., MPEG program stream),then the MPEG-PS needs to be converted into a TS. Various types ofprocessing for converting an MPEG-PS into a TS have been developed andare already well-known in the art, and the description thereof will beomitted herein.

Thus, in the second preferred embodiment described above, the opticaldisk reading section 121 recognizes the types of the given ROM disk(including the disk type and the type of content protection) and thecopyright information generating section 105 generates output controlinformation following the licensing rules according to the types of theROM disk and stores it, along with the content, on the medium 110. Inthis manner, appropriate copyright protection is realized according tothe source of the given content.

In the second preferred embodiment, an example of generating outputcontrol information following associated rules by identifying a givenoptical disk ROM medium has been described. However, similar effects areachieved on a different type of source, too. Suppose a cable TV has acontract term that programs on a particular channel may not be providedas analog output but may be output digitally under the protection ofDTCP or HDCP, for example. In that case, the output control section 14or copyright information generating section 105 of information storagedevice including a cable TV receiver can generate output controlinformation according to the selected channel and in accordance with therules of that channel. By storing this output control information on themedium, appropriate copyright protection is realized according to thesource of the given content.

It should be noted that the cable TV broadcasting, satellite andterrestrial digital broadcasting in Japan, and satellite and terrestrialdigital broadcasting in the United States and other countries areprovided by broadcasters following broadcasting operating rules thatwere set by various standard setting organizations. That is why thecopyright information generating section 105 may identify thetransmitting country and the broadcasting type of a given data streamand locate its input source by getting information (e.g., broadcastercode) showing which is broadcasting operating rules the broadcastfollows from the data stream and identifying the broadcasting system.Also, if the broadcasting system adopts a limited reception system usingcryptography, for example, then the receiver needs to be provided with adecoding algorithm and key, which are needed for decoding purposes, inaccordance with the licensing contract of the limited reception system.As a result, the output control section 14 or copyright informationgenerating section 105 of the information storage device can generateoutput control information in accordance with the licensing rules of theidentified broadcasting system and its limited reception system. Then,by storing the output control information on the medium, appropriatecopyright protection is realized according to the source of the content.

Embodiment 3

In the first and second preferred embodiments described above, theinformation storage device stores a data stream, representing a content,on the medium 110. However, if the data stream representing the contentmay be output to an information player that is connected to a homenetwork, for example, then the user can view and listen to the contentthat is output digitally without debasing its quality just like when thecontent is recorded on the medium 110, which is convenient for him orher. Nevertheless, if the data stream is output unlimitedly to a publicnetwork such as the Internet beyond the home network, then appropriatecopyright protection cannot be guaranteed anymore.

Thus, a transmission system for realizing copyright protection even whena digital data stream representing a content is output to an informationplayer over a network will be described as a third preferred embodimentof the present invention.

FIG. 30 shows a configuration of a transmission system 300 according tothis preferred embodiment. The transmission system 300 includes a sourcesite 30-1 for transmitting a data stream representing a content and asink site 30-2 for receiving the data stream, which are linked togetherover a network 310.

The transmission system 300 is compliant with the DTCP and can transmita content over an IP (Internet protocol) network. The IP network usuallyconnects worldwide network terminals together. However, according to theDTCP standard, a data stream representing a content may be transmittedto only a limited range. Thus, in this preferred embodiment, a datastream representing a content is controlled so as to be transmitted toonly a particular range.

Specifically, the control is realized as follows. First, the source site30-1 includes at least an information storage system 10 and a firstrouter 31-1. The information storage system 10 is just as alreadydescribed for the first preferred embodiment and can record a content onthe medium 15. The content may be played back from the medium 15 andoutput to an external device by an information playback system 20-1.Alternatively, instead of recording the content on the medium 15, theinformation storage system 10 may encrypt the data stream representingthe content and output it to the external device. In this preferredembodiment, the latter example will be described. Since the data streamrepresenting the content is output from the information storage system10, the information storage system 10 is called a “source device”.

In FIG. 30, the first router 31-1 is supposed to receive the data streamdirectly from the information storage system 10. At this point in time,following the rule that the output is permitted to DTCP that transmitsit to only a particular range, output control information that permitsoutput to DTCP that transmits it to only a particular range isgenerated. Such output control information is described in the copystatus descriptor to be embedded in the data stream and that outputcontrol information may be output separately.

The information storage system 10 sets the value of time to live (TTL,which is a packet life time) to three in outputting the data streamrepresenting the content. In this preferred embodiment, this TTL is usedto limit the transmission of the content data stream to the particularrange and is provided within the IP header of each packet in which thecontent data to be transmitted is stored. It is already well known inthe art exactly where in the IP header the TTL should be stored and whatvalue should be set, and the detailed description thereof will beomitted herein.

Every time a packet passes a router, the TTL value is decremented by oneby the router. And when the TTL value reaches zero, the router discardsthat packet. At that time, the router returns a packet, notifying thatthe packet has been discarded, to the sender. Generally speaking, twodevices that pass a plurality of routers are likely to be located faraway from each other. Accordingly, by setting TTL to be a relativelysmall value, the packet's reach can be limited to a narrow range. Inthis preferred embodiment, since the TTL value is set to three, it ispossible to prevent the packet from being transmitted broadly over apublic network. According to the DTCP, the transmission range of acontent can be limited by not only using the TTL but also using a roundtrip time (RTT, which is an amount of time it takes for a packet to makea round trip). Thus, in the following example, a method for limiting thetransmission range by using a TTL will be described first, and then amethod for limiting the transmission range by using an RTT will bedescribed.

In FIG. 30, after the TTL has been set to two by the first router 31-1,the content is output to the network 310. Not only the encrypted contentbut also output control information are output. The encrypted datastream representing the content and the output control information soonreach the sink site 30-2.

The sink site 30-2 includes a second router 31-2 and an informationplayback system 20-2. The second router 31-2 receives the encrypted datastream and the output control information over the network 310, and thendetermines whether the TTL is equal to zero or not. Since the TTL iscurrently equal to two, not zero, the second router decrements the TTLby one to one and then sends the packet to the information playbacksystem 20-2. In response, the information playback system 20-2 playsback the content based on the data stream received.

FIGS. 31 and 32 show DTCP processing according to the IP. Thetransmission system 300 just described with reference to FIG. 30 issupposed to set a TTL for each packet of a given content. However, ahuge number of transport packets are usually included in a content.Thus, a process that can lighten the router's TTL load by setting a TTLfor a packet other than the transport packets of a given content will bedescribed with reference to FIGS. 31 through 33.

First, FIG. 31 shows an example in which the content cannot be decodedor played back due to TTL constraints. According to the DTCP, first, asource device accepts a content request in S1 shown in FIG. 31. Thesource device corresponds to the information storage system 10 of thesource site 30-1 in the example shown in FIG. 30.

The source device receives a non-encrypted content in S2, encrypts thedata of that content, and then sends the data, along with the extendedencryption mode indicator (E-EMI) of the packet, to an IP network in S3.A sink device estimates the encryption state of the E-EMI of thereceived content (e.g., copying permitted without restrictions, nocopying permitted anymore, copying permitted only one generation orcopying prohibited), and judges that the packet has been encrypted in S4unless the E-EMI is “copying permitted without restrictions”. In theexample shown in FIG. 30, the sink device corresponds to the informationplayback system 20 of the sink site 30-2.

If the content data has been encrypted, then it is necessary to get thekey. That is why the source device and the sink device authenticate eachother to confirm that the counterpart is a DTCP compliant device.

The cross authentication is done by storing an authentication and keyexchange (AKE) command in an IP packet and executing the AKE command. Inmaking the cross authentication, first, the sink device issues anauthentication request packet in S5. Specifically, the sink device sendsa random number using the CHALLENGE sub-function of the AKE command tothe source device. In this case, the sink device sets the TTL of the IPpacket, in which the AKE command is stored, to three. If three or morerouters should be passed until the command packet reaches thecounterpart device, then the TTL becomes equal to zero and the packet isdiscarded. In that case, the AKE command cannot be executed, and thesink device cannot get the cryptographic key and cannot play back thecontent, either. In FIG. 31, the IP packet issued by the sink devicedecrements its TTL by one when passing the third router and then thesecond router. And when the packet passes the first router, TTL becomesequal to zero. Thus, the packet is discarded by the first router. As aresult, the authentication request packet issued by the sink device doesnot reach the source device and the cross authentication cannot be done.Consequently, the content data cannot be played back unlimitedly and thecopyright of the content can be protected.

FIG. 32 shows an example in which an encrypted content can be decodedand played back. In FIG. 32, the same processing steps as those shown inFIG. 31 are carried out until S4.

In the example shown in FIG. 32, there are only two routers between thesource and sink devices. That is why even if the TTL value is initiallyset to be three, its value never becomes equal to zero between thesource and sink devices. That is to say, the authentication requestpacket issued by the sink device does reach the source device in S5 byway of the second and first routers. When reaching the source device,the TTL of the IP packet is equal to one and that packet is neverdiscarded during the transmission.

On receiving this authentication request, the source device checks theTTL of the IP packet. If the TTL value stored is greater than three,then the source device will not execute AKE by judging the device thatissued the AKE command as an unauthorized device. On the other hand, ifthe TTL value is three or less, then the source device returns an IPpacket as an authentication response (i.e., response to the AKE command)to the sink device. In that case, the TTL is also set to be three. Thisresponse reaches the sink device by way of the first and second routers.Thereafter, the source device also issues a predetermined AKE command tothe sink device to authenticate each other.

When the cross authentication is done, the key is exchanged (i.e., acontent key is passed to the sink device) to end the crossauthentication and key exchange in S6. After that, a non-encryptedcontent is input to the source device in S7 and DTCP encrypted andtransmitted to the sink device in S8. The sink device decodes the DTCPcode with the content key that has been got in S6, thereby getting thenon-encrypted content in S9. As a result, the sink device can play backthe non-encrypted content.

By defining the range of the device, with which the DTCP key isexchanged, through these processing steps, the transmission range of thecontent can be limited. The TTL is essentially one of the functions ofan IP router. Accordingly, when such a method for limiting thetransmission range by using the TTL is adopted, the processing load canbe a lot lighter. In the example described above, TTL is supposed to beequal to three. However, this is just an example and the range can belimited using an arbitrary number of 1 through 255.

Next, a method for limiting the transmission range by using a round triptime (RTT), which is an amount of time it takes for a packet to make around trip, will be described. That is to say, the RTT is a period oftime that passes after a predetermined command has been transmitted fromone device to another device and before its response returns. If thereare routers and other intervening devices between the devices, then theRTT becomes longer as the number of those intervening devices increases.Accordingly, if the RTT has a small value, the devices are likelylocated close to each other.

FIG. 33 shows an exemplary procedure of processing to be done when theRTT is used. S1 through S4 are the same as those shown in FIGS. 31 and32 and the description thereof will be omitted herein. When the E-EMIhas been estimated in S4, the sink device will make an authenticationrequest in S5. On receiving the AKE command as the authenticationrequest, the source device sends an ICMP echo request, which is definedby the Internet Control Message Protocol, to the sink device in S6. TheICMP packet transmitted passes a number of routers (e.g., first andsecond routers in FIG. 33) and then arrives at the sink device. Inresponse, the sink device makes an ICMP echo response packet and returnsit to the source device in S7.

The source device receives the response packet, figures out the RTT bycalculating the difference between transmission and reception times inS8, and then checks the value of the RTT in S9. If the RTT value isequal to or greater than a predetermined value (e.g., 10 ms), the sourcedevice will not perform the cross authentication after that. Then, thesink device will not be able to get the cryptographic key in that case.On the other hand, if the RTT value is less than the predeterminedvalue, then the source device also issues a predetermined AKE command tothe sink device to make cross authentication. When the crossauthentication is done, the key is exchanged (i.e., a content key ispassed to the sink device) to end the cross authentication and keyexchange in S10. After that, a non-encrypted content is input to thesource device in S11 and DTCP encrypted and transmitted to the sinkdevice in S12. The sink device decodes the DTCP code with the contentkey that has been got, thereby getting the non-encrypted content in S13.As a result, the sink device can play back the non-encrypted content.

By defining the range of the device, with which the DTCP key isexchanged, through these processing steps, the transmission range of thecontent can be limited.

If the process using the TTL and the process using the RTT are combined,then the reliability of the content protection can be increased. Forexample, in S5 shown in FIG. 33, the authentication request packet maybe sent with TTL=3. Then, in the environment shown in FIG. 31, there arethree or more routers between the sink and source devices, andtherefore, TTL becomes equal to zero and the packet is discarded. If thecontrol needs to be performed using the RTT only, then the TTL may beset to a sufficiently large value (e.g., 255).

Furthermore, by using the TTL, the content can be transmitted betweenthe source device and a particular sink device without depending on thenumber of intervening routers.

FIG. 34 shows a transmission system including a TTL setting section 42and a TTL adjusting section 47. A content is transmitted from a sourcedevice 41 to a sink device 48. Between them, a first router 43, a secondrouter 44, . . . an m^(th) router 45 and an n^(th) router 46 areprovided. Accordingly, if this transmission system limits thetransmission range of the IP packet by setting TTL equal to three, thenthe IP packet cannot be transmitted between the source and sink devices41 and 48.

That is why the TTL setting section 42 is arranged between the sourcedevice 41 and the first router 43, and the TTL adjusting section 47 isarranged between the last router 46 and the sink device 48. The TTLsetting section 42 may be provided within the same site as the sourcedevice 41 (e.g., within the source site 30-1 shown in FIG. 30). And theTTL adjusting section 47 may be provided within the same site as thesink device 48 (e.g., within the sink site 30-2 shown in FIG. 30).

The TTL setting section 42 changes the TTL setting of the IP packet,which has just been transmitted from the source device, into 255.Meanwhile, the TTL adjusting section 47 sets the TTL of the IP packet,which was transmitted toward the source device 48, equal to three. As aresult, the range limitation by the TTL can be avoided. This techniqueis effectively applicable to a situation where a person that has got acontent legally wants to view and listen to the content at a distantterminal, for example.

However, if the TTL setting section 42 and the TTL adjusting section 47were provided without restrictions, then the content could betransmitted to any sink device. That is why some measure needs to betaken. For example, a sink device with a particular IP address may beregistered in advance such that the TTL setting section 42 and TTLadjusting section 47 perform the processing only on an IP packet that isgoing to be transmitted toward the registered sink device. It should benoted that the transmission range can be limited by using the RTT inthis case, too. Since the RTT needs to be calculated based on thetransmission and reception times of the ICMP packet, a heavy processingload is imposed on the device. In any case, however, the processing iscarried out inside the source or sink device, and it is difficult toperform any illegal activity using an external device. That is why bynot only providing the TTL setting section 42 and TTL adjusting section47 but also performing the processing using the RTT, the reliability ofcontent protection can be increased.

The information processing system described above (i.e., the informationstorage system 10 and/or the information playback system 20) includes acomputer. And the processing described above is realized by getting aprestored computer program executed by each computer. For example, inthe information storage device 100, the control section 108 is acomputer. And in the information player 200, the control section 209 isa computer. The processes done by the information storage device 100 andinformation player 200 are realized by making their control sectionsexecute computer programs defining the processing procedures shown inFIGS. 24 and 27, for example. That is to say, by executing such acomputer program, each computer operates the respective components ofthe device and performs the processing described above. The computerprogram may be circulated on the market by being stored on a storagemedium such as a CD-ROM or downloaded over telecommunications lines suchas the Internet. As a result, even a computer system can also operate asa player with the same functions as the data processor described above.

INDUSTRIAL APPLICABILITY

According to the present invention, the recorder generates informationfor controlling the output of a content to be recorded according to theinput source of the content and writes the information on the medium onwhich the content is stored. The player has only to output the contentin accordance with that information. Thus, there is no need to considerthe input source in outputting the content. As a result, the processingload on the player can be reduced and appropriate copyright protectionis realized.

1. An information processing system that is able to record a content ona medium, the system comprising: a stream getting section for getting adata stream representing the content; and a recording processing sectionfor generating output control information and writing the data streamand the output control information on the medium, the output controlinformation defining an appropriate output method, which is compatiblewith the output format of the content, following a rule that defineswhat type of processing should be done according to the type of inputsource of the content and the output format of the content and inaccordance with source related information on the input source of thecontent.
 2. The information processing system of claim 1, wherein thestream setting section gets a data stream including the source relatedinformation.
 3. The information processing system of claim 2, whereinthe recording processing section gets the source related informationthat includes copyright control information of the content and/or sourceinformation that shows the type of the input source, and wherein thecopyright control information is used to control at least one of theProcessing of recording the content and the processing of outputting therecorded content.
 4. The information processing system of claim 3,wherein the recording processing section gets the source relatedinformation including the copyright control information, the copyrightcontrol information including recording control information forcontrolling recording of the content and/or output control informationshowing whether the content may be output or not.
 5. The informationprocessing system of claim 1, wherein the recording processing sectiongets source information, which shows the type of the input source by anacquisition route of the data stream, as the source related information.6. The information processing system of claim 5, wherein the streamgetting section receives the data stream as a broadcast, and wherein therecording processing section finds the acquisition route of the datastream by the channel of the broadcast received.
 7. The informationprocessing system of claim 6, wherein the recording processing sectionfinds the acquisition route of the data stream by informationidentifying a broadcasting system.
 8. The information processing systemof claim 5, wherein the stream getting section gets the data stream froma content storage medium, which is different from the medium and onwhich the content is stored, and wherein the recording processingsection finds the acquisition route of the data stream by the type ofthe content storage medium.
 9. The information processing system ofclaim 1, wherein the recording processing section generates a streamfile, in which the data stream is stored, and an information file, inwhich the output control information is stored, for the medium.
 10. Theinformation processing system of claim 1, wherein the recordingprocessing section describes the output control information in the datastream and generates a stream file, in which the data stream is stored,and an information file, in which the output control information isstored, for the medium.
 11. The information processing system of claim1, wherein the data stream received includes control information thatdefines how to output the content, and wherein the recording processingsection further generates different pieces of output control informationfor respective portions of the content in accordance with the controlinformation.
 12. The information processing system of claim 11, whereinthe recording processing section describes those pieces of outputcontrol information for the respective portions of the content withinthe data stream and generates a stream file, in which the data stream isstored, for the medium, and wherein when describing output controlinformation that prohibits output, the recording processing sectiongenerates an information file, in which the output control informationthat prohibits output is stored, for the medium.
 13. The informationprocessing system of claim 1, wherein the data stream received includescontrol information that defines how to output the content, and whereinif the control information includes a portion that prohibits outputtingthe content, the recording processing section generates output controlinformation that prohibits outputting the entire content.
 14. Theinformation processing system of claim 1, wherein the recordingprocessing section further generates checking data based on informationunique to the medium and the output control information, and writes thechecking data on the medium.
 15. The information processing system ofclaim 1, wherein the content is an audio content, and wherein therecording processing section retains a rule that defines what type ofprocessing should be done according to the output mode of the audiocontent.
 16. A method of recording a content on a medium, the methodcomprising the steps of: getting a data stream representing the content;generating output control information, the output control informationdefining an appropriate output method, which is compatible with theoutput format of the content, following a rule that defines what type ofprocessing should be done according to the type of input source of thecontent and the output format of the content and in accordance withsource related information on the input source of the content; andwriting the data stream and the output control information on themedium.
 17. A product of a computer program to be executed by aninformation processing system for recording a content on a medium, theprogram being defined so as to make the information processing system,executing the computer program, perform the steps of: getting a datastream representing the content; generating output control information,the output control information defining an appropriate output method,which is compatible with the output format of the content, following arule that defines what type of processing should be done according tothe type of input source of the content and the output format of thecontent and in accordance with source related information on the inputsource of the content; and writing the data stream and the outputcontrol information on the medium.